<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Kinetis Bootloader: LPSPI Peripheral driver</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kinetis Bootloader
   &#160;<span id="projectnumber">2.0.0</span>
   </div>
   <div id="projectbrief">Common bootloader for Kinetis devices</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Introduction</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__lpspi__driver.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a>  </div>
  <div class="headertitle">
<div class="title">LPSPI Peripheral driver<div class="ingroups"><a class="el" href="group___low.html">Power Serial Peripheral Interface (LPSPI)</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Collaboration diagram for LPSPI Peripheral driver:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<center><table><tr><td><div class="center"><iframe scrolling="no" frameborder="0" src="group__lpspi__driver.svg" width="371" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:structlpspi__master__config__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t">lpspi_master_config_t</a></td></tr>
<tr class="memdesc:structlpspi__master__config__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master config structure.  <a href="group__lpspi__driver.html#structlpspi__master__config__t">More...</a><br /></td></tr>
<tr class="separator:structlpspi__master__config__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structlpspi__slave__config__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t">lpspi_slave_config_t</a></td></tr>
<tr class="memdesc:structlpspi__slave__config__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI slave config structure.  <a href="group__lpspi__driver.html#structlpspi__slave__config__t">More...</a><br /></td></tr>
<tr class="separator:structlpspi__slave__config__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:structlpspi__transfer__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a></td></tr>
<tr class="memdesc:structlpspi__transfer__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master/slave transfer structure.  <a href="group__lpspi__driver.html#structlpspi__transfer__t">More...</a><br /></td></tr>
<tr class="separator:structlpspi__transfer__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:struct__lpspi__master__handle"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#struct__lpspi__master__handle">lpspi_master_handle_t</a></td></tr>
<tr class="memdesc:struct__lpspi__master__handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master transfer handle structure used for transactional API.  <a href="group__lpspi__driver.html#struct__lpspi__master__handle">More...</a><br /></td></tr>
<tr class="separator:struct__lpspi__master__handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:struct__lpspi__slave__handle"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#struct__lpspi__slave__handle">lpspi_slave_handle_t</a></td></tr>
<tr class="memdesc:struct__lpspi__slave__handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI slave transfer handle structure used for transactional API.  <a href="group__lpspi__driver.html#struct__lpspi__slave__handle">More...</a><br /></td></tr>
<tr class="separator:struct__lpspi__slave__handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga65b6cc7e0ab88322b8c87957c855b595"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga65b6cc7e0ab88322b8c87957c855b595">lpspi_master_transfer_callback_t</a>) (LPSPI_Type *base, lpspi_master_handle_t *handle, <a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td></tr>
<tr class="memdesc:ga65b6cc7e0ab88322b8c87957c855b595"><td class="mdescLeft">&#160;</td><td class="mdescRight">Master completion callback function pointer type.  <a href="#ga65b6cc7e0ab88322b8c87957c855b595">More...</a><br /></td></tr>
<tr class="separator:ga65b6cc7e0ab88322b8c87957c855b595"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f085dc3448a6b1d5ab388ac5ce90573"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga5f085dc3448a6b1d5ab388ac5ce90573">lpspi_slave_transfer_callback_t</a>) (LPSPI_Type *base, lpspi_slave_handle_t *handle, <a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td></tr>
<tr class="memdesc:ga5f085dc3448a6b1d5ab388ac5ce90573"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave completion callback function pointer type.  <a href="#ga5f085dc3448a6b1d5ab388ac5ce90573">More...</a><br /></td></tr>
<tr class="separator:ga5f085dc3448a6b1d5ab388ac5ce90573"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga8e41dbbd251f8207dab31385701c4f50"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga8e41dbbd251f8207dab31385701c4f50">_lpspi_status</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8e41dbbd251f8207dab31385701c4f50a7f12633826bd7df839619b14c0ca28cc">kStatus_LPSPI_Busy</a> = MAKE_STATUS(kStatusGroup_LPSPI, 0), 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8e41dbbd251f8207dab31385701c4f50a3faf60052aef160c9e665b923f6560f0">kStatus_LPSPI_Error</a> = MAKE_STATUS(kStatusGroup_LPSPI, 1), 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8e41dbbd251f8207dab31385701c4f50a44467ff9577a1be6b13121e8f075d92a">kStatus_LPSPI_Idle</a> = MAKE_STATUS(kStatusGroup_LPSPI, 2), 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8e41dbbd251f8207dab31385701c4f50a2f2d2fc26087dd6282b229e1c7471758">kStatus_LPSPI_OutOfRange</a> = MAKE_STATUS(kStatusGroup_LPSPI, 3)
<br />
 }<tr class="memdesc:ga8e41dbbd251f8207dab31385701c4f50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Status for the LPSPI driver.  <a href="group__lpspi__driver.html#ga8e41dbbd251f8207dab31385701c4f50">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga8e41dbbd251f8207dab31385701c4f50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad97e399bf4883a243d83fc7cffb19655"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gad97e399bf4883a243d83fc7cffb19655">_lpspi_flags</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655a3947665fd37fb039123f594df926cff1">kLPSPI_TxDataRequestFlag</a> = LPSPI_SR_TDF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655a5bdd7020ceafc2b5cbfa6e9ffa72b1cb">kLPSPI_RxDataReadyFlag</a> = LPSPI_SR_RDF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655ad84b2113adf471177ecee7d7de5f82e0">kLPSPI_WordCompleteFlag</a> = LPSPI_SR_WCF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655acec0a8ef85d641ef6589d4deea14ce21">kLPSPI_FrameCompleteFlag</a> = LPSPI_SR_FCF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655a4c1300adf80a19668a729a9b9f1c3660">kLPSPI_TransferCompleteFlag</a> = LPSPI_SR_TCF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655a240267c0100041bbeb6acbae45a37b15">kLPSPI_TransmitErrorFlag</a> = LPSPI_SR_TEF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655aad86acfadef3dc8df91849884ec355e3">kLPSPI_ReceiveErrorFlag</a> = LPSPI_SR_REF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655a53fa68713ae51b053362e99930b1f841">kLPSPI_DataMatchFlag</a> = LPSPI_SR_DMF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655a71a15d927635fc51125dadf7ad1167a8">kLPSPI_ModuleBusyFlag</a> = LPSPI_SR_MBF_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggad97e399bf4883a243d83fc7cffb19655af29f28d13e798c1fcbce009e203a1fed">kLPSPI_AllStatusFlag</a>
<br />
 }<tr class="memdesc:gad97e399bf4883a243d83fc7cffb19655"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI status flags in SPIx_SR register.  <a href="group__lpspi__driver.html#gad97e399bf4883a243d83fc7cffb19655">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gad97e399bf4883a243d83fc7cffb19655"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab80d8a605a7ba992043ba4e6afa501a3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gab80d8a605a7ba992043ba4e6afa501a3">_lpspi_interrupt_enable</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a2d20e000503ba5c5a0c9f67c60a714cd">kLPSPI_TxInterruptEnable</a> = LPSPI_IER_TDIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a2b9ff66ccb9229355668bdcc05f77dc9">kLPSPI_RxInterruptEnable</a> = LPSPI_IER_RDIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a73f0e5f45806e247e46bf7244695693e">kLPSPI_WordCompleteInterruptEnable</a> = LPSPI_IER_WCIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a0c0dde3048f3d25c56eac65acaceb49b">kLPSPI_FrameCompleteInterruptEnable</a> = LPSPI_IER_FCIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3ac0d5fa696784facb2fbaf2c01e7569bd">kLPSPI_TransferCompleteInterruptEnable</a> = LPSPI_IER_TCIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a23f8ac8e04b9cd32f458727ec1ed38ad">kLPSPI_TransmitErrorInterruptEnable</a> = LPSPI_IER_TEIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a0433263f892d70eb2859746b075c14e7">kLPSPI_ReceiveErrorInterruptEnable</a> = LPSPI_IER_REIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a6032909768af91efcdb432843f48047b">kLPSPI_DataMatchInterruptEnable</a> = LPSPI_IER_DMIE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggab80d8a605a7ba992043ba4e6afa501a3a2a8a671a096982bdf93ddba6d146d5d6">kLPSPI_AllInterruptEnable</a>
<br />
 }<tr class="memdesc:gab80d8a605a7ba992043ba4e6afa501a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI interrupt source.  <a href="group__lpspi__driver.html#gab80d8a605a7ba992043ba4e6afa501a3">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gab80d8a605a7ba992043ba4e6afa501a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafed26b4ba584824e51e91b4040591cf2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gafed26b4ba584824e51e91b4040591cf2">_lpspi_dma_enable</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggafed26b4ba584824e51e91b4040591cf2a527e96eef74618b0b40c30cf6a1a2828">kLPSPI_TxDmaEnable</a> = LPSPI_DER_TDDE_MASK, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggafed26b4ba584824e51e91b4040591cf2aea817767e6bd800ff275458f07f363db">kLPSPI_RxDmaEnable</a> = LPSPI_DER_RDDE_MASK
<br />
 }<tr class="memdesc:gafed26b4ba584824e51e91b4040591cf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI DMA source.  <a href="group__lpspi__driver.html#gafed26b4ba584824e51e91b4040591cf2">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gafed26b4ba584824e51e91b4040591cf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae28cea6ce513555e39a3ac343d05ad52"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gae28cea6ce513555e39a3ac343d05ad52">lpspi_master_slave_mode_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae28cea6ce513555e39a3ac343d05ad52a5f5755c293c4eea06b35528c7dadb505">kLPSPI_Master</a> = 1U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae28cea6ce513555e39a3ac343d05ad52ac2fbf07d3dcc5fd91629c58bec8aa5c4">kLPSPI_Slave</a> = 0U
<br />
 }<tr class="memdesc:gae28cea6ce513555e39a3ac343d05ad52"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master or slave mode configuration.  <a href="group__lpspi__driver.html#gae28cea6ce513555e39a3ac343d05ad52">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gae28cea6ce513555e39a3ac343d05ad52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga90ad4c281c99433627f8cccf56b2a653"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga90ad4c281c99433627f8cccf56b2a653">lpspi_which_pcs_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga90ad4c281c99433627f8cccf56b2a653ad0a33b6673cd3a9e54ab55f5d5138871">kLPSPI_Pcs0</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga90ad4c281c99433627f8cccf56b2a653a276b09136d3d15a0fe0dc5d0bab9b3f1">kLPSPI_Pcs1</a> = 1U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga90ad4c281c99433627f8cccf56b2a653a2d4d2611c76b7832b346d00072f49561">kLPSPI_Pcs2</a> = 2U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga90ad4c281c99433627f8cccf56b2a653a91ecfb74e3c582725faea8aa28700590">kLPSPI_Pcs3</a> = 3U
<br />
 }<tr class="memdesc:ga90ad4c281c99433627f8cccf56b2a653"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Peripheral Chip Select (Pcs) configuration (which Pcs to configure).  <a href="group__lpspi__driver.html#ga90ad4c281c99433627f8cccf56b2a653">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga90ad4c281c99433627f8cccf56b2a653"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6303bce5095876c64d47e3b19e76bd97"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga6303bce5095876c64d47e3b19e76bd97">lpspi_pcs_polarity_config_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga6303bce5095876c64d47e3b19e76bd97a5be0e938a788cff5717c2c2590e52c59">kLPSPI_PcsActiveHigh</a> = 1U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga6303bce5095876c64d47e3b19e76bd97a4a1448bee9f6f3d4383fe13cdc1100ce">kLPSPI_PcsActiveLow</a> = 0U
<br />
 }<tr class="memdesc:ga6303bce5095876c64d47e3b19e76bd97"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Peripheral Chip Select (Pcs) Polarity configuration.  <a href="group__lpspi__driver.html#ga6303bce5095876c64d47e3b19e76bd97">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga6303bce5095876c64d47e3b19e76bd97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga69d39d2c7c0054aa76e8f3282c98cc43"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga69d39d2c7c0054aa76e8f3282c98cc43">_lpspi_pcs_polarity</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga69d39d2c7c0054aa76e8f3282c98cc43a39ba76078eacda5cd1067083e1424219">kLPSPI_Pcs0ActiveLow</a> = 1U &lt;&lt; 0, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga69d39d2c7c0054aa76e8f3282c98cc43a9fba36c05ea23b988a6d6eea57111cc4">kLPSPI_Pcs1ActiveLow</a> = 1U &lt;&lt; 1, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga69d39d2c7c0054aa76e8f3282c98cc43a59994c42bc8d6a84754db3eb615b9a52">kLPSPI_Pcs2ActiveLow</a> = 1U &lt;&lt; 2, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga69d39d2c7c0054aa76e8f3282c98cc43a7d590e420c3d77192425d459ef47cb18">kLPSPI_Pcs3ActiveLow</a> = 1U &lt;&lt; 3, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga69d39d2c7c0054aa76e8f3282c98cc43a7bfc7ab3ae077df8f7dedd69caefa159">kLPSPI_PcsAllActiveLow</a> = 0xFU
<br />
 }<tr class="memdesc:ga69d39d2c7c0054aa76e8f3282c98cc43"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Peripheral Chip Select (Pcs) Polarity.  <a href="group__lpspi__driver.html#ga69d39d2c7c0054aa76e8f3282c98cc43">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga69d39d2c7c0054aa76e8f3282c98cc43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaafc42f4a3c8eb16d4777f3c6f0f8654c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaafc42f4a3c8eb16d4777f3c6f0f8654c">lpspi_clock_polarity_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaafc42f4a3c8eb16d4777f3c6f0f8654ca5f5af0b1696c75bddcc45548dc6eb4e5">kLPSPI_ClockPolarityActiveHigh</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaafc42f4a3c8eb16d4777f3c6f0f8654ca8d0257641a93e1539be2284aa8dea2c2">kLPSPI_ClockPolarityActiveLow</a> = 1U
<br />
 }<tr class="memdesc:gaafc42f4a3c8eb16d4777f3c6f0f8654c"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI clock polarity configuration.  <a href="group__lpspi__driver.html#gaafc42f4a3c8eb16d4777f3c6f0f8654c">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gaafc42f4a3c8eb16d4777f3c6f0f8654c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga00a7c64b74442ff1961346c0297f9ab3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga00a7c64b74442ff1961346c0297f9ab3">lpspi_clock_phase_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga00a7c64b74442ff1961346c0297f9ab3a1c127121f13c6756c19c6640a1a3f66f">kLPSPI_ClockPhaseFirstEdge</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga00a7c64b74442ff1961346c0297f9ab3a69541d5ec76b63987c1523f67f281039">kLPSPI_ClockPhaseSecondEdge</a> = 1U
<br />
 }<tr class="memdesc:ga00a7c64b74442ff1961346c0297f9ab3"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI clock phase configuration.  <a href="group__lpspi__driver.html#ga00a7c64b74442ff1961346c0297f9ab3">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga00a7c64b74442ff1961346c0297f9ab3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4116edfccfda3a0788a9b68bb9b50fcd"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga4116edfccfda3a0788a9b68bb9b50fcd">lpspi_shift_direction_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga4116edfccfda3a0788a9b68bb9b50fcda6cfcf70021ed17b06148973a577b06b0">kLPSPI_MsbFirst</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga4116edfccfda3a0788a9b68bb9b50fcdaa258be180c87a702892e74e80612bcac">kLPSPI_LsbFirst</a> = 1U
<br />
 }<tr class="memdesc:ga4116edfccfda3a0788a9b68bb9b50fcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI data shifter direction options.  <a href="group__lpspi__driver.html#ga4116edfccfda3a0788a9b68bb9b50fcd">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga4116edfccfda3a0788a9b68bb9b50fcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9179eac6fe5a70f9350df669a4547b57"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga9179eac6fe5a70f9350df669a4547b57">lpspi_host_request_select_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga9179eac6fe5a70f9350df669a4547b57a1ecf2a9ee61a10a6abfd3b003ecded95">kLPSPI_HostReqExtPin</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga9179eac6fe5a70f9350df669a4547b57ae7bcf394055c5c96962fbdeb59473b53">kLPSPI_HostReqInternalTrigger</a> = 1U
<br />
 }<tr class="memdesc:ga9179eac6fe5a70f9350df669a4547b57"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Host Request select configuration.  <a href="group__lpspi__driver.html#ga9179eac6fe5a70f9350df669a4547b57">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga9179eac6fe5a70f9350df669a4547b57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac44bb22e39759dab2695974b9e232396"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gac44bb22e39759dab2695974b9e232396">lpspi_match_config_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396a05d1b5c903dfe4898c9b1fd684250294">kLPSI_MatchDisabled</a> = 0x0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396a17bfedfd52cb4ad0b4806b0867a04e89">kLPSI_1stWordEqualsM0orM1</a> = 0x2U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396ae98eab6b132ff11c1df102e8e6cdd24c">kLPSI_AnyWordEqualsM0orM1</a> = 0x3U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396a11c22b22c672c03591c560a6c8faf428">kLPSI_1stWordEqualsM0and2ndWordEqualsM1</a> = 0x4U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396a67938e63bf8168ce35e090a2b210ad2e">kLPSI_AnyWordEqualsM0andNxtWordEqualsM1</a> = 0x5U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396a20ae6796a58bde43ba80737927e905ab">kLPSI_1stWordAndM1EqualsM0andM1</a> = 0x6U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggac44bb22e39759dab2695974b9e232396a02b507b2df58ba42c650727fc0a1cfa5">kLPSI_AnyWordAndM1EqualsM0andM1</a> = 0x7U
<br />
 }<tr class="memdesc:gac44bb22e39759dab2695974b9e232396"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Match configuration options.  <a href="group__lpspi__driver.html#gac44bb22e39759dab2695974b9e232396">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gac44bb22e39759dab2695974b9e232396"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae5ea17a161935f47c786934c524bb2af"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gae5ea17a161935f47c786934c524bb2af">lpspi_pin_config_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5ea17a161935f47c786934c524bb2afa25d21ca2f0397f7bf6c23a1b1c6691f7">kLPSPI_SdiInSdoOut</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5ea17a161935f47c786934c524bb2afa33c599830166b775f368ee16ff0682d5">kLPSPI_SdoInSdoOut</a> = 1U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5ea17a161935f47c786934c524bb2afa1e5af86e47569305db258791cb467d30">kLPSPI_SdiInSdiOut</a> = 2U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5ea17a161935f47c786934c524bb2afa43f7557904b7103eeb4516624d0c995c">kLPSPI_SdoInSdiOut</a> = 3U
<br />
 }<tr class="memdesc:gae5ea17a161935f47c786934c524bb2af"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI pin (SDO and SDI) configuration.  <a href="group__lpspi__driver.html#gae5ea17a161935f47c786934c524bb2af">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gae5ea17a161935f47c786934c524bb2af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga134cbe42b20647e752e66aaeabbc10d4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga134cbe42b20647e752e66aaeabbc10d4">lpspi_data_out_config_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga134cbe42b20647e752e66aaeabbc10d4a82a3d2bf52e339c016ea5b55b6e5a0b5">kLpspiDataOutRetained</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga134cbe42b20647e752e66aaeabbc10d4ad88e6541ea02827476f10ca3a7906129">kLpspiDataOutTristate</a> = 1U
<br />
 }<tr class="memdesc:ga134cbe42b20647e752e66aaeabbc10d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI data output configuration.  <a href="group__lpspi__driver.html#ga134cbe42b20647e752e66aaeabbc10d4">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga134cbe42b20647e752e66aaeabbc10d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa5d9038e390c8a7610dc72375da252a7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaa5d9038e390c8a7610dc72375da252a7">lpspi_transfer_width_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaa5d9038e390c8a7610dc72375da252a7a56986005418db6d0910782c58ed92dc0">kLPSPI_SingleBitXfer</a> = 0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaa5d9038e390c8a7610dc72375da252a7aeb5365dd5861043f098db28e9945c191">kLPSPI_TwoBitXfer</a> = 1U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaa5d9038e390c8a7610dc72375da252a7a591c0c33b13b3fc9fe8d05bb14e5176a">kLPSPI_FourBitXfer</a> = 2U
<br />
 }<tr class="memdesc:gaa5d9038e390c8a7610dc72375da252a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI transfer width configuration.  <a href="group__lpspi__driver.html#gaa5d9038e390c8a7610dc72375da252a7">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gaa5d9038e390c8a7610dc72375da252a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae5e0bf71f3d28f35327f0268039d0c0c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">lpspi_delay_type_t</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5e0bf71f3d28f35327f0268039d0c0ca3d71d8a9758a52226844e7b721f3dfb8">kLPSPI_PcsToSck</a> = 1U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5e0bf71f3d28f35327f0268039d0c0ca4c475db384f87476967ad8318fc8e941">kLPSPI_LastSckToPcs</a>, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggae5e0bf71f3d28f35327f0268039d0c0caec200ab5e56e72854f694bc65846e015">kLPSPI_BetweenTransfer</a>
<br />
 }<tr class="memdesc:gae5e0bf71f3d28f35327f0268039d0c0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI delay type selection.  <a href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gae5e0bf71f3d28f35327f0268039d0c0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8c2566783079ecdbb478f06658375005"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga8c2566783079ecdbb478f06658375005">_lpspi_transfer_config_flag_for_master</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005ad472cdb233d16b4b9e5372c214e34a3c">kLPSPI_MasterPcs0</a> = 0U &lt;&lt; LPSPI_MASTER_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005a1b57aa21038a9d2fe7affdda155a21d0">kLPSPI_MasterPcs1</a> = 1U &lt;&lt; LPSPI_MASTER_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005abd22976ae5150a0f57f27f439d25e6d0">kLPSPI_MasterPcs2</a> = 2U &lt;&lt; LPSPI_MASTER_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005a38ce619f68339f607e63affd7ce012a5">kLPSPI_MasterPcs3</a> = 3U &lt;&lt; LPSPI_MASTER_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005a81e8942cb9a3dc01b6900fa0fc44a807">kLPSPI_MasterPcsContinuous</a> = 1U &lt;&lt; 20, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005aada04eea6a730a7536682944531385bb">kLPSPI_MasterByteSwap</a> = 1U &lt;&lt; 22
<br />
 }<tr class="memdesc:ga8c2566783079ecdbb478f06658375005"><td class="mdescLeft">&#160;</td><td class="mdescRight">Can use this enum for LPSPI master transfer configFlags.  <a href="group__lpspi__driver.html#ga8c2566783079ecdbb478f06658375005">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga8c2566783079ecdbb478f06658375005"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf3ef07696513a970ce8195b5b0f1a8c1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaf3ef07696513a970ce8195b5b0f1a8c1">_lpspi_transfer_config_flag_for_slave</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1ab1faad46d523e037048a3064893ae07c">kLPSPI_SlavePcs0</a> = 0U &lt;&lt; LPSPI_SLAVE_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1a0e6aee8fe7dfd9c2d66b505d73c37232">kLPSPI_SlavePcs1</a> = 1U &lt;&lt; LPSPI_SLAVE_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1ae64e50be4483554dc3ebc66c379de03e">kLPSPI_SlavePcs2</a> = 2U &lt;&lt; LPSPI_SLAVE_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1a6d5cce71f6a0551128e551100bc9f39f">kLPSPI_SlavePcs3</a> = 3U &lt;&lt; LPSPI_SLAVE_PCS_SHIFT, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1a42d91e6c56fda80853954fdf01365998">kLPSPI_SlaveByteSwap</a> = 1U &lt;&lt; 22
<br />
 }<tr class="memdesc:gaf3ef07696513a970ce8195b5b0f1a8c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Can use this enum for LPSPI slave transfer configFlags.  <a href="group__lpspi__driver.html#gaf3ef07696513a970ce8195b5b0f1a8c1">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gaf3ef07696513a970ce8195b5b0f1a8c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7718265fdc39522b101e1deb430ab1f7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga7718265fdc39522b101e1deb430ab1f7">_lpspi_transfer_state</a> { <br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga7718265fdc39522b101e1deb430ab1f7ad1366ce0c1c0c8a66a6ee9611cb4ae8c">kLPSPI_Idle</a> = 0x0U, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga7718265fdc39522b101e1deb430ab1f7a81465b4e8946a9a8b3634e4fc04933fd">kLPSPI_Busy</a>, 
<br />
&#160;&#160;<a class="el" href="group__lpspi__driver.html#gga7718265fdc39522b101e1deb430ab1f7a9f52ab17cca4320266e1b7c194df33ec">kLPSPI_Error</a>
<br />
 }<tr class="memdesc:ga7718265fdc39522b101e1deb430ab1f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI transfer state, which is used for LPSPI transactiaonl APIs' state machine.  <a href="group__lpspi__driver.html#ga7718265fdc39522b101e1deb430ab1f7">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga7718265fdc39522b101e1deb430ab1f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Initialization and deinitialization</h2></td></tr>
<tr class="memitem:ga22ae05bf7948761752a425f273423af4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga22ae05bf7948761752a425f273423af4">LPSPI_MasterInit</a> (LPSPI_Type *base, const <a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t">lpspi_master_config_t</a> *masterConfig, uint32_t srcClock_Hz)</td></tr>
<tr class="memdesc:ga22ae05bf7948761752a425f273423af4"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master Init.  <a href="#ga22ae05bf7948761752a425f273423af4">More...</a><br /></td></tr>
<tr class="separator:ga22ae05bf7948761752a425f273423af4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7c865e3ddf8b0e8b39eaa044ebdd7a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaf7c865e3ddf8b0e8b39eaa044ebdd7a9">LPSPI_MasterGetDefaultConfig</a> (<a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t">lpspi_master_config_t</a> *masterConfig)</td></tr>
<tr class="memdesc:gaf7c865e3ddf8b0e8b39eaa044ebdd7a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the <a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t" title="LPSPI master config structure. ">lpspi_master_config_t</a> structure to default values.  <a href="#gaf7c865e3ddf8b0e8b39eaa044ebdd7a9">More...</a><br /></td></tr>
<tr class="separator:gaf7c865e3ddf8b0e8b39eaa044ebdd7a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2f690f608d984b845a7bee7a1efae45f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga2f690f608d984b845a7bee7a1efae45f">LPSPI_SlaveInit</a> (LPSPI_Type *base, const <a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t">lpspi_slave_config_t</a> *slaveConfig)</td></tr>
<tr class="memdesc:ga2f690f608d984b845a7bee7a1efae45f"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI slave configuration.  <a href="#ga2f690f608d984b845a7bee7a1efae45f">More...</a><br /></td></tr>
<tr class="separator:ga2f690f608d984b845a7bee7a1efae45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5c8896fd0d8c76434b74698487f0f838"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga5c8896fd0d8c76434b74698487f0f838">LPSPI_SlaveGetDefaultConfig</a> (<a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t">lpspi_slave_config_t</a> *slaveConfig)</td></tr>
<tr class="memdesc:ga5c8896fd0d8c76434b74698487f0f838"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the <a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t" title="LPSPI slave config structure. ">lpspi_slave_config_t</a> structure to default values.  <a href="#ga5c8896fd0d8c76434b74698487f0f838">More...</a><br /></td></tr>
<tr class="separator:ga5c8896fd0d8c76434b74698487f0f838"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaec14fb9cf6f33a9482cad1ac3367ceeb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaec14fb9cf6f33a9482cad1ac3367ceeb">LPSPI_Deinit</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gaec14fb9cf6f33a9482cad1ac3367ceeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">De-initialize the LPSPI peripheral, call this API to disbale the lpspi clock.  <a href="#gaec14fb9cf6f33a9482cad1ac3367ceeb">More...</a><br /></td></tr>
<tr class="separator:gaec14fb9cf6f33a9482cad1ac3367ceeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga65c6f36d3b7c051b2f4c4b3c0f4e67a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga65c6f36d3b7c051b2f4c4b3c0f4e67a2">LPSPI_Reset</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:ga65c6f36d3b7c051b2f4c4b3c0f4e67a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restores the LPSPI peripheral to reset state, notice that this function will set all the registers to reset state so the LPSPI module can not work after calling this API.  <a href="#ga65c6f36d3b7c051b2f4c4b3c0f4e67a2">More...</a><br /></td></tr>
<tr class="separator:ga65c6f36d3b7c051b2f4c4b3c0f4e67a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7652e02b7e15dbbe611bf1b88aa6f658"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga7652e02b7e15dbbe611bf1b88aa6f658">LPSPI_Enable</a> (LPSPI_Type *base, bool enable)</td></tr>
<tr class="memdesc:ga7652e02b7e15dbbe611bf1b88aa6f658"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the LPSPI peripheral and sets the MCR MDIS to 0.  <a href="#ga7652e02b7e15dbbe611bf1b88aa6f658">More...</a><br /></td></tr>
<tr class="separator:ga7652e02b7e15dbbe611bf1b88aa6f658"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Status</h2></td></tr>
<tr class="memitem:ga65f275a2b7c4c85e65f66dc205ccaba2"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga65f275a2b7c4c85e65f66dc205ccaba2">LPSPI_GetStatusFlags</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:ga65f275a2b7c4c85e65f66dc205ccaba2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI status flag state.  <a href="#ga65f275a2b7c4c85e65f66dc205ccaba2">More...</a><br /></td></tr>
<tr class="separator:ga65f275a2b7c4c85e65f66dc205ccaba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8de4de520051c5d597c187c83a716fe"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaa8de4de520051c5d597c187c83a716fe">LPSPI_GetTxFifoSize</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gaa8de4de520051c5d597c187c83a716fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI Tx FIFO size.  <a href="#gaa8de4de520051c5d597c187c83a716fe">More...</a><br /></td></tr>
<tr class="separator:gaa8de4de520051c5d597c187c83a716fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06d5b0b646c41f819d66c570abe82686"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga06d5b0b646c41f819d66c570abe82686">LPSPI_GetRxFifoSize</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:ga06d5b0b646c41f819d66c570abe82686"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI Rx FIFO size.  <a href="#ga06d5b0b646c41f819d66c570abe82686">More...</a><br /></td></tr>
<tr class="separator:ga06d5b0b646c41f819d66c570abe82686"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaad302d78079501338706a15b2a25b627"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaad302d78079501338706a15b2a25b627">LPSPI_GetTxFifoCount</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gaad302d78079501338706a15b2a25b627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI Tx FIFO count.  <a href="#gaad302d78079501338706a15b2a25b627">More...</a><br /></td></tr>
<tr class="separator:gaad302d78079501338706a15b2a25b627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaccf9caba656fbab8c2baaf9c064dfd18"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaccf9caba656fbab8c2baaf9c064dfd18">LPSPI_GetRxFifoCount</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gaccf9caba656fbab8c2baaf9c064dfd18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI Rx FIFO count.  <a href="#gaccf9caba656fbab8c2baaf9c064dfd18">More...</a><br /></td></tr>
<tr class="separator:gaccf9caba656fbab8c2baaf9c064dfd18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46f471b0b317dbcefb753ac1eca220cc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga46f471b0b317dbcefb753ac1eca220cc">LPSPI_ClearStatusFlags</a> (LPSPI_Type *base, uint32_t statusFlags)</td></tr>
<tr class="memdesc:ga46f471b0b317dbcefb753ac1eca220cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the LPSPI status flag.  <a href="#ga46f471b0b317dbcefb753ac1eca220cc">More...</a><br /></td></tr>
<tr class="separator:ga46f471b0b317dbcefb753ac1eca220cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Interrupts</h2></td></tr>
<tr class="memitem:ga4808761455aaf83e91fd8379874946ed"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga4808761455aaf83e91fd8379874946ed">LPSPI_EnableInterrupts</a> (LPSPI_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga4808761455aaf83e91fd8379874946ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the LPSPI interrupts.  <a href="#ga4808761455aaf83e91fd8379874946ed">More...</a><br /></td></tr>
<tr class="separator:ga4808761455aaf83e91fd8379874946ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga40a046e84442cb6f187f37b676a026cc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga40a046e84442cb6f187f37b676a026cc">LPSPI_DisableInterrupts</a> (LPSPI_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga40a046e84442cb6f187f37b676a026cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable the LPSPI interrupts.  <a href="#ga40a046e84442cb6f187f37b676a026cc">More...</a><br /></td></tr>
<tr class="separator:ga40a046e84442cb6f187f37b676a026cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
DMA Control</h2></td></tr>
<tr class="memitem:ga962cc835d0c6133d3b5ca97103ffb3fb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga962cc835d0c6133d3b5ca97103ffb3fb">LPSPI_EnableDMA</a> (LPSPI_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:ga962cc835d0c6133d3b5ca97103ffb3fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the LPSPI DMA request.  <a href="#ga962cc835d0c6133d3b5ca97103ffb3fb">More...</a><br /></td></tr>
<tr class="separator:ga962cc835d0c6133d3b5ca97103ffb3fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae40bb751eb579a3ba6f0df9d2b128074"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gae40bb751eb579a3ba6f0df9d2b128074">LPSPI_DisableDMA</a> (LPSPI_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gae40bb751eb579a3ba6f0df9d2b128074"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disable the LPSPI DMA request.  <a href="#gae40bb751eb579a3ba6f0df9d2b128074">More...</a><br /></td></tr>
<tr class="separator:gae40bb751eb579a3ba6f0df9d2b128074"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad411d09a6ece1909f3fa0c6eb6972a27"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gad411d09a6ece1909f3fa0c6eb6972a27">LPSPI_GetTxRegisterAddress</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gad411d09a6ece1909f3fa0c6eb6972a27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI Transmit Data Register address for DMA operation.  <a href="#gad411d09a6ece1909f3fa0c6eb6972a27">More...</a><br /></td></tr>
<tr class="separator:gad411d09a6ece1909f3fa0c6eb6972a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga441f4a34fc1014e80df6dbdd3ccef49e"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga441f4a34fc1014e80df6dbdd3ccef49e">LPSPI_GetRxRegisterAddress</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:ga441f4a34fc1014e80df6dbdd3ccef49e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the LPSPI Receive Data Register address for DMA operation.  <a href="#ga441f4a34fc1014e80df6dbdd3ccef49e">More...</a><br /></td></tr>
<tr class="separator:ga441f4a34fc1014e80df6dbdd3ccef49e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Bus Operations</h2></td></tr>
<tr class="memitem:ga31dd4286061d9827893b20da53fbe711"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga31dd4286061d9827893b20da53fbe711">LPSPI_SetMasterSlaveMode</a> (LPSPI_Type *base, <a class="el" href="group__lpspi__driver.html#gae28cea6ce513555e39a3ac343d05ad52">lpspi_master_slave_mode_t</a> mode)</td></tr>
<tr class="memdesc:ga31dd4286061d9827893b20da53fbe711"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the LPSPI for master or slave.  <a href="#ga31dd4286061d9827893b20da53fbe711">More...</a><br /></td></tr>
<tr class="separator:ga31dd4286061d9827893b20da53fbe711"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0a22161d44cf08f3609ce0371190b43"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaf0a22161d44cf08f3609ce0371190b43">LPSPI_IsMaster</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gaf0a22161d44cf08f3609ce0371190b43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the LPSPI module is in master mode.  <a href="#gaf0a22161d44cf08f3609ce0371190b43">More...</a><br /></td></tr>
<tr class="separator:gaf0a22161d44cf08f3609ce0371190b43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1388a83ff99459ea04927a951fe4ba64"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga1388a83ff99459ea04927a951fe4ba64">LPSPI_FlushFifo</a> (LPSPI_Type *base, bool flushTxFifo, bool flushRxFifo)</td></tr>
<tr class="memdesc:ga1388a83ff99459ea04927a951fe4ba64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flushes the LPSPI FIFOs.  <a href="#ga1388a83ff99459ea04927a951fe4ba64">More...</a><br /></td></tr>
<tr class="separator:ga1388a83ff99459ea04927a951fe4ba64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9036ebfaa63448544b3a15731bf64afb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga9036ebfaa63448544b3a15731bf64afb">LPSPI_SetFifoWatermarks</a> (LPSPI_Type *base, uint32_t txWater, uint32_t rxWater)</td></tr>
<tr class="memdesc:ga9036ebfaa63448544b3a15731bf64afb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the transmit and receive FIFO watermark values.  <a href="#ga9036ebfaa63448544b3a15731bf64afb">More...</a><br /></td></tr>
<tr class="separator:ga9036ebfaa63448544b3a15731bf64afb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac44e343cc612a8f9662dca0124e01375"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gac44e343cc612a8f9662dca0124e01375">LPSPI_SetAllPcsPolarity</a> (LPSPI_Type *base, uint32_t mask)</td></tr>
<tr class="memdesc:gac44e343cc612a8f9662dca0124e01375"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures all the LPSPI peripheral chip select polarity simultaneously.  <a href="#gac44e343cc612a8f9662dca0124e01375">More...</a><br /></td></tr>
<tr class="separator:gac44e343cc612a8f9662dca0124e01375"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1c04805f36ab2d8f3dcf8204ad4e6fc8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga1c04805f36ab2d8f3dcf8204ad4e6fc8">LPSPI_SetFrameSize</a> (LPSPI_Type *base, uint32_t frameSize)</td></tr>
<tr class="memdesc:ga1c04805f36ab2d8f3dcf8204ad4e6fc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configures the frame size .  <a href="#ga1c04805f36ab2d8f3dcf8204ad4e6fc8">More...</a><br /></td></tr>
<tr class="separator:ga1c04805f36ab2d8f3dcf8204ad4e6fc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6e952fee44ee7107dd22be1fcca41599"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga6e952fee44ee7107dd22be1fcca41599">LPSPI_MasterSetBaudRate</a> (LPSPI_Type *base, uint32_t baudRate_Bps, uint32_t srcClock_Hz, uint32_t *tcrPrescaleValue)</td></tr>
<tr class="memdesc:ga6e952fee44ee7107dd22be1fcca41599"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the LPSPI baud rate in bits per second.  <a href="#ga6e952fee44ee7107dd22be1fcca41599">More...</a><br /></td></tr>
<tr class="separator:ga6e952fee44ee7107dd22be1fcca41599"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9b69797908deb95b2b96e76bc7f8e4f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga9b69797908deb95b2b96e76bc7f8e4f9">LPSPI_MasterSetDelayScaler</a> (LPSPI_Type *base, uint32_t scaler, <a class="el" href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">lpspi_delay_type_t</a> whichDelay)</td></tr>
<tr class="memdesc:ga9b69797908deb95b2b96e76bc7f8e4f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Manually configures a specific LPSPI delay parameter (module must be disabled to change the delay values).  <a href="#ga9b69797908deb95b2b96e76bc7f8e4f9">More...</a><br /></td></tr>
<tr class="separator:ga9b69797908deb95b2b96e76bc7f8e4f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga35f5b5317e3faffe8307221c24c2eeb3"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga35f5b5317e3faffe8307221c24c2eeb3">LPSPI_MasterSetDelayTimes</a> (LPSPI_Type *base, uint32_t delayTimeInNanoSec, <a class="el" href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">lpspi_delay_type_t</a> whichDelay, uint32_t srcClock_Hz)</td></tr>
<tr class="memdesc:ga35f5b5317e3faffe8307221c24c2eeb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the delay based on the desired delay input in nanoseconds (module must be disabled to change the delay values).  <a href="#ga35f5b5317e3faffe8307221c24c2eeb3">More...</a><br /></td></tr>
<tr class="separator:ga35f5b5317e3faffe8307221c24c2eeb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c54f5e7381db4f9291ca7f2e74e92d8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga3c54f5e7381db4f9291ca7f2e74e92d8">LPSPI_WriteDataNonBlocking</a> (LPSPI_Type *base, uint32_t data)</td></tr>
<tr class="memdesc:ga3c54f5e7381db4f9291ca7f2e74e92d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes data into the transmit data buffer.  <a href="#ga3c54f5e7381db4f9291ca7f2e74e92d8">More...</a><br /></td></tr>
<tr class="separator:ga3c54f5e7381db4f9291ca7f2e74e92d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad424e970bbb5333e45eaea2f66885521"><td class="memItemLeft" align="right" valign="top">static uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gad424e970bbb5333e45eaea2f66885521">LPSPI_ReadDataNonBlocking</a> (LPSPI_Type *base)</td></tr>
<tr class="memdesc:gad424e970bbb5333e45eaea2f66885521"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data from the data buffer.  <a href="#gad424e970bbb5333e45eaea2f66885521">More...</a><br /></td></tr>
<tr class="separator:gad424e970bbb5333e45eaea2f66885521"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7397508d8f35bd53d48d2bd400b8855a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga7397508d8f35bd53d48d2bd400b8855a">LPSPI_MasterTransferBlocking</a> (LPSPI_Type *base, <a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a> *transfer)</td></tr>
<tr class="memdesc:ga7397508d8f35bd53d48d2bd400b8855a"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master transfer data using polling.  <a href="#ga7397508d8f35bd53d48d2bd400b8855a">More...</a><br /></td></tr>
<tr class="separator:ga7397508d8f35bd53d48d2bd400b8855a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Transactional</h2></td></tr>
<tr class="memitem:ga81ce64b08a05cb34fe8416c9fc2c969f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga81ce64b08a05cb34fe8416c9fc2c969f">LPSPI_MasterCreateHandle</a> (LPSPI_Type *base, lpspi_master_handle_t *handle, <a class="el" href="group__lpspi__driver.html#ga65b6cc7e0ab88322b8c87957c855b595">lpspi_master_transfer_callback_t</a> callback, void *userData)</td></tr>
<tr class="memdesc:ga81ce64b08a05cb34fe8416c9fc2c969f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the lpspi master handle.  <a href="#ga81ce64b08a05cb34fe8416c9fc2c969f">More...</a><br /></td></tr>
<tr class="separator:ga81ce64b08a05cb34fe8416c9fc2c969f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga962d0a70e661183c6925f87d97ab71d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga962d0a70e661183c6925f87d97ab71d0">LPSPI_MasterTransferNonBlocking</a> (LPSPI_Type *base, lpspi_master_handle_t *handle, <a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a> *transfer)</td></tr>
<tr class="memdesc:ga962d0a70e661183c6925f87d97ab71d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master transfer data using interrupt.  <a href="#ga962d0a70e661183c6925f87d97ab71d0">More...</a><br /></td></tr>
<tr class="separator:ga962d0a70e661183c6925f87d97ab71d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4ff6873dffb078d1d49532ad0670e405"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga4ff6873dffb078d1d49532ad0670e405">LPSPI_MasterGetTransferCount</a> (LPSPI_Type *base, lpspi_master_handle_t *handle, size_t *count)</td></tr>
<tr class="memdesc:ga4ff6873dffb078d1d49532ad0670e405"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the master transfer remaining bytes.  <a href="#ga4ff6873dffb078d1d49532ad0670e405">More...</a><br /></td></tr>
<tr class="separator:ga4ff6873dffb078d1d49532ad0670e405"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac66232f8876a20334a9c01cfd83a4bce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gac66232f8876a20334a9c01cfd83a4bce">LPSPI_MasterAbortTransfer</a> (LPSPI_Type *base, lpspi_master_handle_t *handle)</td></tr>
<tr class="memdesc:gac66232f8876a20334a9c01cfd83a4bce"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI master abort transfer which using interrupt.  <a href="#gac66232f8876a20334a9c01cfd83a4bce">More...</a><br /></td></tr>
<tr class="separator:gac66232f8876a20334a9c01cfd83a4bce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaacfd1e61150c8709911fea392e5c8cea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gaacfd1e61150c8709911fea392e5c8cea">LPSPI_MasterHandleInterrupt</a> (LPSPI_Type *base, lpspi_master_handle_t *handle)</td></tr>
<tr class="memdesc:gaacfd1e61150c8709911fea392e5c8cea"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Master IRQ handler function.  <a href="#gaacfd1e61150c8709911fea392e5c8cea">More...</a><br /></td></tr>
<tr class="separator:gaacfd1e61150c8709911fea392e5c8cea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga17795aed6614f3d2f449309ad7df1d57"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga17795aed6614f3d2f449309ad7df1d57">LPSPI_SlaveCreateHandle</a> (LPSPI_Type *base, lpspi_slave_handle_t *handle, <a class="el" href="group__lpspi__driver.html#ga5f085dc3448a6b1d5ab388ac5ce90573">lpspi_slave_transfer_callback_t</a> callback, void *userData)</td></tr>
<tr class="memdesc:ga17795aed6614f3d2f449309ad7df1d57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the lpspi slave handle.  <a href="#ga17795aed6614f3d2f449309ad7df1d57">More...</a><br /></td></tr>
<tr class="separator:ga17795aed6614f3d2f449309ad7df1d57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga41d2ccaef2f31a13ce2baef806a7aa2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga41d2ccaef2f31a13ce2baef806a7aa2b">LPSPI_SlaveTransferNonBlocking</a> (LPSPI_Type *base, lpspi_slave_handle_t *handle, <a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a> *transfer)</td></tr>
<tr class="memdesc:ga41d2ccaef2f31a13ce2baef806a7aa2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI slave transfer data using interrupt.  <a href="#ga41d2ccaef2f31a13ce2baef806a7aa2b">More...</a><br /></td></tr>
<tr class="separator:ga41d2ccaef2f31a13ce2baef806a7aa2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga30990cbcf40543dfbc514c11bfb5c4b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga30990cbcf40543dfbc514c11bfb5c4b9">LPSPI_SlaveGetTransferCount</a> (LPSPI_Type *base, lpspi_slave_handle_t *handle, size_t *count)</td></tr>
<tr class="memdesc:ga30990cbcf40543dfbc514c11bfb5c4b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the slave transfer remaining bytes.  <a href="#ga30990cbcf40543dfbc514c11bfb5c4b9">More...</a><br /></td></tr>
<tr class="separator:ga30990cbcf40543dfbc514c11bfb5c4b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafdd65d9bb5bad35e2566267cc209fbea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#gafdd65d9bb5bad35e2566267cc209fbea">LPSPI_SlaveAbortTransfer</a> (LPSPI_Type *base, lpspi_slave_handle_t *handle)</td></tr>
<tr class="memdesc:gafdd65d9bb5bad35e2566267cc209fbea"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI slave abort transfer which using interrupt.  <a href="#gafdd65d9bb5bad35e2566267cc209fbea">More...</a><br /></td></tr>
<tr class="separator:gafdd65d9bb5bad35e2566267cc209fbea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4663d972940c359b6ff968b276a8eb0a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lpspi__driver.html#ga4663d972940c359b6ff968b276a8eb0a">LPSPI_SlaveHandleInterrupt</a> (LPSPI_Type *base, lpspi_slave_handle_t *handle)</td></tr>
<tr class="memdesc:ga4663d972940c359b6ff968b276a8eb0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPSPI Slave IRQ handler function.  <a href="#ga4663d972940c359b6ff968b276a8eb0a">More...</a><br /></td></tr>
<tr class="separator:ga4663d972940c359b6ff968b276a8eb0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Usage Information</h2>
<p>This section describes the programming interface of the LPSPI Peripheral driver. The LPSPI driver configures LPSPI module, provides the functional and transactional interfaces to build the LPSPI application.</p>
<h1><a class="anchor" id="LPSPIFunGrps"></a>
Function groups</h1>
<h2><a class="anchor" id="LPSPIInitReset"></a>
LPSPI Initialization and De-initialization</h2>
<p>This function group initializes the default configuration structure for master and slave, initializes the LPSPI master with a master configuration, initializes the LPSPI slave with a slave configuration, and de-initializes the LPSPI module.</p>
<h2><a class="anchor" id="LPSPIBasicOps"></a>
LPSPI Basic Operation</h2>
<p>This function group enables/disables the LPSPI module both interrupt and DMA, gets the data register address for the DMA transfer, sets master and slave, starts and stops the transfer, and so on.</p>
<h2><a class="anchor" id="LPSPITransOps"></a>
LPSPI Transfer Operation</h2>
<p>This function group controls the transfer, master send/receive data, and slave send/receive data.</p>
<h2><a class="anchor" id="LPSPIStatusOps"></a>
LPSPI Status Operation</h2>
<p>This function group gets/clears the LPSPI status.</p>
<h2><a class="anchor" id="LPSPIBlockTrans"></a>
LPSPI Block Transfer Operation</h2>
<p>This function group transfers a block of data, gets the transfer status, and aborts the transfer.</p>
<h1><a class="anchor" id="LPSPITpyUC"></a>
Typical use case</h1>
<h2><a class="anchor" id="LPSPIMasterOps"></a>
Master Operation</h2>
<div class="fragment"><div class="line">lpspi_master_handle_t g_m_handle; <span class="comment">//global variable</span></div><div class="line"><a class="code" href="group__lpspi__driver.html#structlpspi__master__config__t">lpspi_master_config_t</a>  masterConfig;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#ab38a80feace530cdca66134f6e3801aa">baudRate</a> = 50000;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a8ccf58110b76fd897fd5861ec36ba249">bitsPerFrame</a> = 8 ;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a0fb0eb4a83201ec6084022aeddc21780">cpol</a> = <a class="code" href="group__lpspi__driver.html#ggaafc42f4a3c8eb16d4777f3c6f0f8654ca5f5af0b1696c75bddcc45548dc6eb4e5">kLPSPI_ClockPolarityActiveHigh</a>;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a6a5bc23653684a0137bc4ee8015a9766">cpha</a> = <a class="code" href="group__lpspi__driver.html#gga00a7c64b74442ff1961346c0297f9ab3a1c127121f13c6756c19c6640a1a3f66f">kLPSPI_ClockPhaseFirstEdge</a>;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a298fb139762c91fe1195f1cac7119d7e">direction</a> = <a class="code" href="group__lpspi__driver.html#gga4116edfccfda3a0788a9b68bb9b50fcda6cfcf70021ed17b06148973a577b06b0">kLPSPI_MsbFirst</a>;</div><div class="line"></div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a90f1390d2fa2a0e5f08925628f2fb227">pcsToSckDelayInNanoSec</a> = 1000000000 / masterConfig.<a class="code" href="group__lpspi__driver.html#ab38a80feace530cdca66134f6e3801aa">baudRate</a> * 2;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a9aa3ebdf191b0c2147755066f452b9c9">lastSckToPcsDelayInNanoSec</a> = 1000000000 / masterConfig.<a class="code" href="group__lpspi__driver.html#ab38a80feace530cdca66134f6e3801aa">baudRate</a> * 2;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a0c9513415b6b6dc15b32854a9c9d9ef9">betweenTransferDelayInNanoSec</a> = 1000000000 / masterConfig.<a class="code" href="group__lpspi__driver.html#ab38a80feace530cdca66134f6e3801aa">baudRate</a> * 2;</div><div class="line"></div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a78bb6fb8fb2066e093fcfa54b6c4503c">whichPcs</a> = <a class="code" href="group__lpspi__driver.html#gga90ad4c281c99433627f8cccf56b2a653ad0a33b6673cd3a9e54ab55f5d5138871">kLPSPI_Pcs0</a>;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#acd4f574514beb757a0f2016013190142">pcsActiveHighOrLow</a> = <a class="code" href="group__lpspi__driver.html#gga6303bce5095876c64d47e3b19e76bd97a4a1448bee9f6f3d4383fe13cdc1100ce">kLPSPI_PcsActiveLow</a>;</div><div class="line"></div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a0a8703742c1fd11af34757242016106f">pinCfg</a> = <a class="code" href="group__lpspi__driver.html#ggae5ea17a161935f47c786934c524bb2afa25d21ca2f0397f7bf6c23a1b1c6691f7">kLPSPI_SdiInSdoOut</a>;</div><div class="line">masterConfig.<a class="code" href="group__lpspi__driver.html#a7dbd7d9fb1c0e29e8e4c45d6707a50d5">dataOutConfig</a> = <a class="code" href="group__lpspi__driver.html#gga134cbe42b20647e752e66aaeabbc10d4a82a3d2bf52e339c016ea5b55b6e5a0b5">kLpspiDataOutRetained</a>;</div><div class="line"></div><div class="line"><span class="comment">//srcClock_Hz = CLOCK_GetFreq(xxx);</span></div><div class="line"></div><div class="line"><a class="code" href="group__lpspi__driver.html#ga22ae05bf7948761752a425f273423af4">LPSPI_MasterInit</a>(EXAMPLE_LPSPI_MASTER_BASEADDR, &amp;masterConfig, srcClock_Hz);</div><div class="line"></div><div class="line"><a class="code" href="group__lpspi__driver.html#ga81ce64b08a05cb34fe8416c9fc2c969f">LPSPI_MasterCreateHandle</a>(base, &amp;g_m_handle, NULL, NULL);</div><div class="line"></div><div class="line">masterXfer.txData = masterTxData;</div><div class="line">masterXfer.rxData = masterRxData;</div><div class="line">masterXfer.<a class="code" href="group__i2c.html#aec81567ca73e5b0cb790098785e345c5">dataSize</a> = TRANSFER_SIZE;</div><div class="line">masterXfer.configFlags = <a class="code" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005ad472cdb233d16b4b9e5372c214e34a3c">kLPSPI_MasterPcs0</a> | <a class="code" href="group__lpspi__driver.html#gga8c2566783079ecdbb478f06658375005a81e8942cb9a3dc01b6900fa0fc44a807">kLPSPI_MasterPcsContinuous</a> | <a class="code" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1a42d91e6c56fda80853954fdf01365998">kLPSPI_SlaveByteSwap</a>;</div><div class="line"></div><div class="line"><a class="code" href="group__lpspi__driver.html#ga962d0a70e661183c6925f87d97ab71d0">LPSPI_MasterTransferNonBlocking</a>(base, &amp;g_m_handle, &amp;masterXfer);</div></div><!-- fragment --><h2><a class="anchor" id="LPSPISlaveOps"></a>
Slave Operation</h2>
<div class="fragment"><div class="line">lpspi_slave_handle_t g_s_handle;<span class="comment">//global variable</span></div><div class="line"></div><div class="line"><span class="comment">/*Slave config*/</span></div><div class="line">slaveConfig.bitsPerFrame = 8;</div><div class="line">slaveConfig.cpol = <a class="code" href="group__lpspi__driver.html#ggaafc42f4a3c8eb16d4777f3c6f0f8654ca5f5af0b1696c75bddcc45548dc6eb4e5">kLPSPI_ClockPolarityActiveHigh</a>;</div><div class="line">slaveConfig.cpha = kLPSPI_ClockPhaseFirstEdge；</div><div class="line">slaveConfig.direction = <a class="code" href="group__lpspi__driver.html#gga4116edfccfda3a0788a9b68bb9b50fcda6cfcf70021ed17b06148973a577b06b0">kLPSPI_MsbFirst</a>;</div><div class="line"></div><div class="line">slaveConfig.whichPcs = <a class="code" href="group__lpspi__driver.html#gga90ad4c281c99433627f8cccf56b2a653ad0a33b6673cd3a9e54ab55f5d5138871">kLPSPI_Pcs0</a>;</div><div class="line">slaveConfig.pcsActiveHighOrLow = <a class="code" href="group__lpspi__driver.html#gga6303bce5095876c64d47e3b19e76bd97a4a1448bee9f6f3d4383fe13cdc1100ce">kLPSPI_PcsActiveLow</a>;</div><div class="line"></div><div class="line">slaveConfig.pinCfg = <a class="code" href="group__lpspi__driver.html#ggae5ea17a161935f47c786934c524bb2afa25d21ca2f0397f7bf6c23a1b1c6691f7">kLPSPI_SdiInSdoOut</a>;</div><div class="line">slaveConfig.dataOutConfig = <a class="code" href="group__lpspi__driver.html#gga134cbe42b20647e752e66aaeabbc10d4a82a3d2bf52e339c016ea5b55b6e5a0b5">kLpspiDataOutRetained</a>;</div><div class="line"></div><div class="line"><a class="code" href="group__lpspi__driver.html#ga2f690f608d984b845a7bee7a1efae45f">LPSPI_SlaveInit</a>(base, &amp;slaveConfig);</div><div class="line"></div><div class="line"><span class="comment">/*Set up slave first */</span></div><div class="line">isSlaveTransferCompleted = <span class="keyword">false</span>;</div><div class="line"><a class="code" href="group__lpspi__driver.html#ga17795aed6614f3d2f449309ad7df1d57">LPSPI_SlaveCreateHandle</a>(base, &amp;g_s_handle, LPSPI_SlaveUserCallback, NULL);</div><div class="line"></div><div class="line">slaveXfer.txData = slaveTxData;</div><div class="line">slaveXfer.rxData = slaveRxData;</div><div class="line">slaveXfer.dataSize = TRANSFER_SIZE;</div><div class="line">slaveXfer.configFlags = <a class="code" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1ab1faad46d523e037048a3064893ae07c">kLPSPI_SlavePcs0</a> | <a class="code" href="group__lpspi__driver.html#ggaf3ef07696513a970ce8195b5b0f1a8c1a42d91e6c56fda80853954fdf01365998">kLPSPI_SlaveByteSwap</a>;</div><div class="line"></div><div class="line"><a class="code" href="group__lpspi__driver.html#ga41d2ccaef2f31a13ce2baef806a7aa2b">LPSPI_SlaveTransferNonBlocking</a>(EXAMPLE_LPSPI_SLAVE_BASEADDR, &amp;g_s_handle, &amp;slaveXfer);</div><div class="line"></div><div class="line"></div><div class="line"><span class="comment">//void LPSPI_SlaveUserCallback(LPSPI_Type *base, lpspi_slave_handle_t *handle, status_t status, void *userData)</span></div><div class="line"><span class="comment">//{</span></div><div class="line"><span class="comment">//   if (status == kStatus_Success)</span></div><div class="line"><span class="comment">//    {</span></div><div class="line"><span class="comment">//        PRINTF(&quot;This is LPSPI slave transfer completed callback. \r\n&quot;);</span></div><div class="line"><span class="comment">//        PRINTF(&quot;It&#39;s a successful transfer. \r\n\r\n&quot;);</span></div><div class="line"><span class="comment">//    }</span></div><div class="line"><span class="comment">//    else if (status == kStatus_LPSPI_Error)</span></div><div class="line"><span class="comment">//    {</span></div><div class="line"><span class="comment">//        PRINTF(&quot;This is LPSPI slave transfer completed callback. \r\n&quot;);</span></div><div class="line"><span class="comment">//        PRINTF(&quot;Error occured in this transfer. \r\n\r\n&quot;);</span></div><div class="line"><span class="comment">//    }</span></div><div class="line"><span class="comment">//    else</span></div><div class="line"><span class="comment">//    {</span></div><div class="line"><span class="comment">//        __NOP();</span></div><div class="line"><span class="comment">//    }</span></div><div class="line"><span class="comment">//</span></div><div class="line"><span class="comment">//    isSlaveTransferCompleted = true;</span></div><div class="line"><span class="comment">//}</span></div></div><!-- fragment --> <hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="structlpspi__master__config__t" id="structlpspi__master__config__t"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct lpspi_master_config_t</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>LPSPI master config structure. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ab38a80feace530cdca66134f6e3801aa"></a>uint32_t</td>
<td class="fieldname">
baudRate</td>
<td class="fielddoc">
<p>Baud Rate for lpspi. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a0c9513415b6b6dc15b32854a9c9d9ef9"></a>uint32_t</td>
<td class="fieldname">
betweenTransferDelayInNanoSec</td>
<td class="fielddoc">
<p>After SCK delay time with nanosecond , set to 0 will set the minimum delay.It woulde set the boundary value if out of range that can be set. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a8ccf58110b76fd897fd5861ec36ba249"></a>uint32_t</td>
<td class="fieldname">
bitsPerFrame</td>
<td class="fielddoc">
<p>Bits per frame, minimum 8, maximum 4096. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a6a5bc23653684a0137bc4ee8015a9766"></a><a class="el" href="group__lpspi__driver.html#ga00a7c64b74442ff1961346c0297f9ab3">lpspi_clock_phase_t</a></td>
<td class="fieldname">
cpha</td>
<td class="fielddoc">
<p>Clock phase. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a0fb0eb4a83201ec6084022aeddc21780"></a><a class="el" href="group__lpspi__driver.html#gaafc42f4a3c8eb16d4777f3c6f0f8654c">lpspi_clock_polarity_t</a></td>
<td class="fieldname">
cpol</td>
<td class="fielddoc">
<p>Clock polarity. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a7dbd7d9fb1c0e29e8e4c45d6707a50d5"></a><a class="el" href="group__lpspi__driver.html#ga134cbe42b20647e752e66aaeabbc10d4">lpspi_data_out_config_t</a></td>
<td class="fieldname">
dataOutConfig</td>
<td class="fielddoc">
<p>Configures if the output data is tristated between accesses (LPSPI_PCS is negated). </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a298fb139762c91fe1195f1cac7119d7e"></a><a class="el" href="group__lpspi__driver.html#ga4116edfccfda3a0788a9b68bb9b50fcd">lpspi_shift_direction_t</a></td>
<td class="fieldname">
direction</td>
<td class="fielddoc">
<p>MSB or LSB data shift direction. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a9aa3ebdf191b0c2147755066f452b9c9"></a>uint32_t</td>
<td class="fieldname">
lastSckToPcsDelayInNanoSec</td>
<td class="fielddoc">
<p>Last SCK to PCS delay time with nanosecond , set to 0 will set the minimum delay.It woulde set the boundary value if out of range that can be set. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="acd4f574514beb757a0f2016013190142"></a><a class="el" href="group__lpspi__driver.html#ga6303bce5095876c64d47e3b19e76bd97">lpspi_pcs_polarity_config_t</a></td>
<td class="fieldname">
pcsActiveHighOrLow</td>
<td class="fielddoc">
<p>Desired PCS active high or low </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a90f1390d2fa2a0e5f08925628f2fb227"></a>uint32_t</td>
<td class="fieldname">
pcsToSckDelayInNanoSec</td>
<td class="fielddoc">
<p>PCS to SCK delay time with nanosecond , set to 0 will set the minimum delay. It woulde set the boundary value if out of range that can be set. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a0a8703742c1fd11af34757242016106f"></a><a class="el" href="group__lpspi__driver.html#gae5ea17a161935f47c786934c524bb2af">lpspi_pin_config_t</a></td>
<td class="fieldname">
pinCfg</td>
<td class="fielddoc">
<p>Configures which pins are used for input and output data during single bit transfers. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a78bb6fb8fb2066e093fcfa54b6c4503c"></a><a class="el" href="group__lpspi__driver.html#ga90ad4c281c99433627f8cccf56b2a653">lpspi_which_pcs_t</a></td>
<td class="fieldname">
whichPcs</td>
<td class="fielddoc">
<p>Desired Peripheral Chip Select (pcs) </p>
</td></tr>
</table>

</div>
</div>
<a name="structlpspi__slave__config__t" id="structlpspi__slave__config__t"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct lpspi_slave_config_t</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>LPSPI slave config structure. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a8ccf58110b76fd897fd5861ec36ba249"></a>uint32_t</td>
<td class="fieldname">
bitsPerFrame</td>
<td class="fielddoc">
<p>Bits per frame, minimum 8, maximum 4096. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a6a5bc23653684a0137bc4ee8015a9766"></a><a class="el" href="group__lpspi__driver.html#ga00a7c64b74442ff1961346c0297f9ab3">lpspi_clock_phase_t</a></td>
<td class="fieldname">
cpha</td>
<td class="fielddoc">
<p>Clock phase. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a0fb0eb4a83201ec6084022aeddc21780"></a><a class="el" href="group__lpspi__driver.html#gaafc42f4a3c8eb16d4777f3c6f0f8654c">lpspi_clock_polarity_t</a></td>
<td class="fieldname">
cpol</td>
<td class="fielddoc">
<p>Clock polarity. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a7dbd7d9fb1c0e29e8e4c45d6707a50d5"></a><a class="el" href="group__lpspi__driver.html#ga134cbe42b20647e752e66aaeabbc10d4">lpspi_data_out_config_t</a></td>
<td class="fieldname">
dataOutConfig</td>
<td class="fielddoc">
<p>Configures if the output data is tristated between accesses (LPSPI_PCS is negated). </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a298fb139762c91fe1195f1cac7119d7e"></a><a class="el" href="group__lpspi__driver.html#ga4116edfccfda3a0788a9b68bb9b50fcd">lpspi_shift_direction_t</a></td>
<td class="fieldname">
direction</td>
<td class="fielddoc">
<p>MSB or LSB data shift direction. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="acd4f574514beb757a0f2016013190142"></a><a class="el" href="group__lpspi__driver.html#ga6303bce5095876c64d47e3b19e76bd97">lpspi_pcs_polarity_config_t</a></td>
<td class="fieldname">
pcsActiveHighOrLow</td>
<td class="fielddoc">
<p>Desired PCS active high or low </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a0a8703742c1fd11af34757242016106f"></a><a class="el" href="group__lpspi__driver.html#gae5ea17a161935f47c786934c524bb2af">lpspi_pin_config_t</a></td>
<td class="fieldname">
pinCfg</td>
<td class="fielddoc">
<p>Configures which pins are used for input and output data during single bit transfers. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a78bb6fb8fb2066e093fcfa54b6c4503c"></a><a class="el" href="group__lpspi__driver.html#ga90ad4c281c99433627f8cccf56b2a653">lpspi_which_pcs_t</a></td>
<td class="fieldname">
whichPcs</td>
<td class="fielddoc">
<p>Desired Peripheral Chip Select (pcs) </p>
</td></tr>
</table>

</div>
</div>
<a name="structlpspi__transfer__t" id="structlpspi__transfer__t"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct lpspi_transfer_t</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>LPSPI master/slave transfer structure. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a8f596820084347c93c458b7553bdd067"></a>uint32_t</td>
<td class="fieldname">
configFlags</td>
<td class="fielddoc">
<p>Transfer transfer config flags , set from _lpspi_transfer_config_flag_for_master if the transfer is used for master or _lpspi_transfer_config_flag_for_slave enum if the transfer is used for slave. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aec81567ca73e5b0cb790098785e345c5"></a>volatile size_t</td>
<td class="fieldname">
dataSize</td>
<td class="fielddoc">
<p>Transfer bytes. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ab83c0e07099df7beb8e491cb91914de0"></a>uint8_t *</td>
<td class="fieldname">
rxData</td>
<td class="fielddoc">
<p>Receive buffer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a03c054bb486fb65133eb9f6849266fb1"></a>uint8_t *</td>
<td class="fieldname">
txData</td>
<td class="fielddoc">
<p>Send buffer. </p>
</td></tr>
</table>

</div>
</div>
<a name="struct__lpspi__master__handle" id="struct__lpspi__master__handle"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct _lpspi_master_handle</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>LPSPI master transfer handle structure used for transactional API. </p>
<p>Forward declaration of the <a class="el" href="group__lpspi__driver.html#struct__lpspi__master__handle" title="LPSPI master transfer handle structure used for transactional API. ">_lpspi_master_handle</a> typedefs. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ad8c938c2c7cdd5c7feabd220911f8350"></a>LPSPI_Type *</td>
<td class="fieldname">
base</td>
<td class="fielddoc">
<p>LPSPI base address. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a480857e72ca27c2cd2ad308f8a0e7993"></a>volatile uint8_t</td>
<td class="fieldname">
bytesEachRead</td>
<td class="fielddoc">
<p>Bytes for each read RDR . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aa6f46bac700151385f8063c97b21d692"></a>volatile uint8_t</td>
<td class="fieldname">
bytesEachWrite</td>
<td class="fielddoc">
<p>Bytes for each write TDR . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a072fc39e6140224fedd028ce727c7aca"></a><a class="el" href="group__lpspi__driver.html#ga65b6cc7e0ab88322b8c87957c855b595">lpspi_master_transfer_callback_t</a></td>
<td class="fieldname">
callback</td>
<td class="fielddoc">
<p>Completion callback. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a1e4dd1f7e153c765af264d2efad25cd5"></a>volatile uint8_t</td>
<td class="fieldname">
fifoSize</td>
<td class="fielddoc">
<p>Fifo dataSize. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a588598f72e912656596294358aab6fe2"></a>volatile bool</td>
<td class="fieldname">
isByteSwap</td>
<td class="fielddoc">
<p>A flag that whether should byte swap. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a8f0b46b9c899a9e4c20a600974af98fc"></a>volatile bool</td>
<td class="fieldname">
isPcsContinuous</td>
<td class="fielddoc">
<p>Is PCS continuous in transfer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aac4f8bb4a502e020b3d91cc2aa93a98d"></a>volatile uint32_t</td>
<td class="fieldname">
readRegRemainingTimes</td>
<td class="fielddoc">
<p>read RDR register remaining times . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aa58335de5bfa8923228432b62ea9308a"></a>uint8_t *volatile</td>
<td class="fieldname">
rxData</td>
<td class="fielddoc">
<p>Receive buffer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a4ae23f3b283c257a77e626702335b56d"></a>volatile size_t</td>
<td class="fieldname">
rxRemainingByteCount</td>
<td class="fielddoc">
<p>Number of bytes remaining to receive. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a91639d4f66a8980e9ef3bec6bf845b35"></a>volatile uint8_t</td>
<td class="fieldname">
rxWatermark</td>
<td class="fielddoc">
<p>Rx watermark. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a06fcd46097cb1779eaa383a6419cd27d"></a>volatile uint8_t</td>
<td class="fieldname">
state</td>
<td class="fielddoc">
<p>LPSPI transfer state , _lpspi_transfer_state. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a28686689a3803230c7fe2658c93eac50"></a>uint32_t</td>
<td class="fieldname">
totalByteCount</td>
<td class="fielddoc">
<p>Number of transfer bytes </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ad0c00ea960d53424d98de2882a50048d"></a>uint32_t</td>
<td class="fieldname">
txBuffIfNull</td>
<td class="fielddoc">
<p>Used if there is not txData for DMA purpose. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ab56d8f300582ce9d7f4a79729124739d"></a>uint8_t *volatile</td>
<td class="fieldname">
txData</td>
<td class="fielddoc">
<p>Send buffer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a7794f7cce2e0b6a4f0699a8c0ef5bc37"></a>volatile size_t</td>
<td class="fieldname">
txRemainingByteCount</td>
<td class="fielddoc">
<p>Number of bytes remaining to send. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a2e294dd14122c554baa0665072b4ca7a"></a>void *</td>
<td class="fieldname">
userData</td>
<td class="fielddoc">
<p>Callback user data. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a67e97f14865710b9db144898df46c804"></a>volatile uint32_t</td>
<td class="fieldname">
writeRegRemainingTimes</td>
<td class="fielddoc">
<p>write TDR register remaining times . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aa5570f840f4056d62c203fc5c1b590b1"></a>volatile bool</td>
<td class="fieldname">
writeTcrInIsr</td>
<td class="fielddoc">
<p>A flag that whether should write TCR in ISR. </p>
</td></tr>
</table>

</div>
</div>
<a name="struct__lpspi__slave__handle" id="struct__lpspi__slave__handle"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct _lpspi_slave_handle</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>LPSPI slave transfer handle structure used for transactional API. </p>
<p>Forward declaration of the <a class="el" href="group__lpspi__driver.html#struct__lpspi__slave__handle" title="LPSPI slave transfer handle structure used for transactional API. ">_lpspi_slave_handle</a> typedefs. </p>
</div><table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ad8c938c2c7cdd5c7feabd220911f8350"></a>LPSPI_Type *</td>
<td class="fieldname">
base</td>
<td class="fielddoc">
<p>LPSPI base address. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a480857e72ca27c2cd2ad308f8a0e7993"></a>volatile uint8_t</td>
<td class="fieldname">
bytesEachRead</td>
<td class="fielddoc">
<p>Bytes for each read RDR . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aa6f46bac700151385f8063c97b21d692"></a>volatile uint8_t</td>
<td class="fieldname">
bytesEachWrite</td>
<td class="fielddoc">
<p>Bytes for each write TDR . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="afc8921cd2f17ad5d419f3ecfc5df7cc7"></a><a class="el" href="group__lpspi__driver.html#ga5f085dc3448a6b1d5ab388ac5ce90573">lpspi_slave_transfer_callback_t</a></td>
<td class="fieldname">
callback</td>
<td class="fielddoc">
<p>Completion callback. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a2a11c9c06fe4f8a45030f131e5800ae4"></a>volatile uint32_t</td>
<td class="fieldname">
errorCount</td>
<td class="fielddoc">
<p>Error count for slave transfer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a1e4dd1f7e153c765af264d2efad25cd5"></a>volatile uint8_t</td>
<td class="fieldname">
fifoSize</td>
<td class="fielddoc">
<p>Fifo dataSize. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a588598f72e912656596294358aab6fe2"></a>volatile bool</td>
<td class="fieldname">
isByteSwap</td>
<td class="fielddoc">
<p>A flag that whether should byte swap. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aac4f8bb4a502e020b3d91cc2aa93a98d"></a>volatile uint32_t</td>
<td class="fieldname">
readRegRemainingTimes</td>
<td class="fielddoc">
<p>read RDR register remaining times . </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="aa58335de5bfa8923228432b62ea9308a"></a>uint8_t *volatile</td>
<td class="fieldname">
rxData</td>
<td class="fielddoc">
<p>Receive buffer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a4ae23f3b283c257a77e626702335b56d"></a>volatile size_t</td>
<td class="fieldname">
rxRemainingByteCount</td>
<td class="fielddoc">
<p>Number of bytes remaining to receive. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a91639d4f66a8980e9ef3bec6bf845b35"></a>volatile uint8_t</td>
<td class="fieldname">
rxWatermark</td>
<td class="fielddoc">
<p>Rx watermark. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a06fcd46097cb1779eaa383a6419cd27d"></a>volatile uint8_t</td>
<td class="fieldname">
state</td>
<td class="fielddoc">
<p>LPSPI transfer state , _lpspi_transfer_state. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a28686689a3803230c7fe2658c93eac50"></a>uint32_t</td>
<td class="fieldname">
totalByteCount</td>
<td class="fielddoc">
<p>Number of transfer bytes </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="ab56d8f300582ce9d7f4a79729124739d"></a>uint8_t *volatile</td>
<td class="fieldname">
txData</td>
<td class="fielddoc">
<p>Send buffer. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a7794f7cce2e0b6a4f0699a8c0ef5bc37"></a>volatile size_t</td>
<td class="fieldname">
txRemainingByteCount</td>
<td class="fielddoc">
<p>Number of bytes remaining to send. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a2e294dd14122c554baa0665072b4ca7a"></a>void *</td>
<td class="fieldname">
userData</td>
<td class="fielddoc">
<p>Callback user data. </p>
</td></tr>
<tr><td class="fieldtype">
<a class="anchor" id="a67e97f14865710b9db144898df46c804"></a>volatile uint32_t</td>
<td class="fieldname">
writeRegRemainingTimes</td>
<td class="fielddoc">
<p>write TDR register remaining times . </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="ga65b6cc7e0ab88322b8c87957c855b595"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* lpspi_master_transfer_callback_t) (LPSPI_Type *base, lpspi_master_handle_t *handle, <a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Master completion callback function pointer type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>Pointer to the handle for the LPSPI master. </td></tr>
    <tr><td class="paramname">status</td><td>Success or error code describing whether the transfer completed. </td></tr>
    <tr><td class="paramname">userData</td><td>Arbitrary pointer-dataSized value passed from the application. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga5f085dc3448a6b1d5ab388ac5ce90573"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef void(* lpspi_slave_transfer_callback_t) (LPSPI_Type *base, lpspi_slave_handle_t *handle, <a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Slave completion callback function pointer type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>Pointer to the handle for the LPSPI slave. </td></tr>
    <tr><td class="paramname">status</td><td>Success or error code describing whether the transfer completed. </td></tr>
    <tr><td class="paramname">userData</td><td>Arbitrary pointer-dataSized value passed from the application. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="gafed26b4ba584824e51e91b4040591cf2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gafed26b4ba584824e51e91b4040591cf2">_lpspi_dma_enable</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI DMA source. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggafed26b4ba584824e51e91b4040591cf2a527e96eef74618b0b40c30cf6a1a2828"></a>kLPSPI_TxDmaEnable&#160;</td><td class="fielddoc">
<p>Transmit data dma enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggafed26b4ba584824e51e91b4040591cf2aea817767e6bd800ff275458f07f363db"></a>kLPSPI_RxDmaEnable&#160;</td><td class="fielddoc">
<p>Receive data dma enable </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gad97e399bf4883a243d83fc7cffb19655"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gad97e399bf4883a243d83fc7cffb19655">_lpspi_flags</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI status flags in SPIx_SR register. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655a3947665fd37fb039123f594df926cff1"></a>kLPSPI_TxDataRequestFlag&#160;</td><td class="fielddoc">
<p>Transmit data flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655a5bdd7020ceafc2b5cbfa6e9ffa72b1cb"></a>kLPSPI_RxDataReadyFlag&#160;</td><td class="fielddoc">
<p>Receive data flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655ad84b2113adf471177ecee7d7de5f82e0"></a>kLPSPI_WordCompleteFlag&#160;</td><td class="fielddoc">
<p>Word Complete flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655acec0a8ef85d641ef6589d4deea14ce21"></a>kLPSPI_FrameCompleteFlag&#160;</td><td class="fielddoc">
<p>Frame Complete flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655a4c1300adf80a19668a729a9b9f1c3660"></a>kLPSPI_TransferCompleteFlag&#160;</td><td class="fielddoc">
<p>Transfer Complete flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655a240267c0100041bbeb6acbae45a37b15"></a>kLPSPI_TransmitErrorFlag&#160;</td><td class="fielddoc">
<p>Transmit Error flag (FIFO underrun) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655aad86acfadef3dc8df91849884ec355e3"></a>kLPSPI_ReceiveErrorFlag&#160;</td><td class="fielddoc">
<p>Receive Error flag (FIFO overrun) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655a53fa68713ae51b053362e99930b1f841"></a>kLPSPI_DataMatchFlag&#160;</td><td class="fielddoc">
<p>Data Match flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655a71a15d927635fc51125dadf7ad1167a8"></a>kLPSPI_ModuleBusyFlag&#160;</td><td class="fielddoc">
<p>Module Busy flag </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggad97e399bf4883a243d83fc7cffb19655af29f28d13e798c1fcbce009e203a1fed"></a>kLPSPI_AllStatusFlag&#160;</td><td class="fielddoc">
<p>Used for clearing all w1c status flags </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gab80d8a605a7ba992043ba4e6afa501a3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gab80d8a605a7ba992043ba4e6afa501a3">_lpspi_interrupt_enable</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI interrupt source. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a2d20e000503ba5c5a0c9f67c60a714cd"></a>kLPSPI_TxInterruptEnable&#160;</td><td class="fielddoc">
<p>Transmit data interrupt enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a2b9ff66ccb9229355668bdcc05f77dc9"></a>kLPSPI_RxInterruptEnable&#160;</td><td class="fielddoc">
<p>Receive data interrupt enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a73f0e5f45806e247e46bf7244695693e"></a>kLPSPI_WordCompleteInterruptEnable&#160;</td><td class="fielddoc">
<p>Word complete interrupt enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a0c0dde3048f3d25c56eac65acaceb49b"></a>kLPSPI_FrameCompleteInterruptEnable&#160;</td><td class="fielddoc">
<p>Frame complete interrupt enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3ac0d5fa696784facb2fbaf2c01e7569bd"></a>kLPSPI_TransferCompleteInterruptEnable&#160;</td><td class="fielddoc">
<p>Transfer complete interrupt enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a23f8ac8e04b9cd32f458727ec1ed38ad"></a>kLPSPI_TransmitErrorInterruptEnable&#160;</td><td class="fielddoc">
<p>Transmit error interrupt enable(FIFO underrun) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a0433263f892d70eb2859746b075c14e7"></a>kLPSPI_ReceiveErrorInterruptEnable&#160;</td><td class="fielddoc">
<p>Receive Error interrupt enable (FIFO overrun) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a6032909768af91efcdb432843f48047b"></a>kLPSPI_DataMatchInterruptEnable&#160;</td><td class="fielddoc">
<p>Data Match interrupt enable </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggab80d8a605a7ba992043ba4e6afa501a3a2a8a671a096982bdf93ddba6d146d5d6"></a>kLPSPI_AllInterruptEnable&#160;</td><td class="fielddoc">
<p>All above interrupts enable. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga69d39d2c7c0054aa76e8f3282c98cc43"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga69d39d2c7c0054aa76e8f3282c98cc43">_lpspi_pcs_polarity</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Peripheral Chip Select (Pcs) Polarity. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga69d39d2c7c0054aa76e8f3282c98cc43a39ba76078eacda5cd1067083e1424219"></a>kLPSPI_Pcs0ActiveLow&#160;</td><td class="fielddoc">
<p>Pcs0 Active Low (idles high). </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga69d39d2c7c0054aa76e8f3282c98cc43a9fba36c05ea23b988a6d6eea57111cc4"></a>kLPSPI_Pcs1ActiveLow&#160;</td><td class="fielddoc">
<p>Pcs1 Active Low (idles high). </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga69d39d2c7c0054aa76e8f3282c98cc43a59994c42bc8d6a84754db3eb615b9a52"></a>kLPSPI_Pcs2ActiveLow&#160;</td><td class="fielddoc">
<p>Pcs2 Active Low (idles high). </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga69d39d2c7c0054aa76e8f3282c98cc43a7d590e420c3d77192425d459ef47cb18"></a>kLPSPI_Pcs3ActiveLow&#160;</td><td class="fielddoc">
<p>Pcs3 Active Low (idles high). </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga69d39d2c7c0054aa76e8f3282c98cc43a7bfc7ab3ae077df8f7dedd69caefa159"></a>kLPSPI_PcsAllActiveLow&#160;</td><td class="fielddoc">
<p>Pcs0 to Pcs5 Active Low (idles high). </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga8e41dbbd251f8207dab31385701c4f50"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga8e41dbbd251f8207dab31385701c4f50">_lpspi_status</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Status for the LPSPI driver. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga8e41dbbd251f8207dab31385701c4f50a7f12633826bd7df839619b14c0ca28cc"></a>kStatus_LPSPI_Busy&#160;</td><td class="fielddoc">
<p>LPSPI transfer is busy. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8e41dbbd251f8207dab31385701c4f50a3faf60052aef160c9e665b923f6560f0"></a>kStatus_LPSPI_Error&#160;</td><td class="fielddoc">
<p>LPSPI driver error. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8e41dbbd251f8207dab31385701c4f50a44467ff9577a1be6b13121e8f075d92a"></a>kStatus_LPSPI_Idle&#160;</td><td class="fielddoc">
<p>LPSPI is idle. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8e41dbbd251f8207dab31385701c4f50a2f2d2fc26087dd6282b229e1c7471758"></a>kStatus_LPSPI_OutOfRange&#160;</td><td class="fielddoc">
<p>LPSPI transfer out Of range. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga8c2566783079ecdbb478f06658375005"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga8c2566783079ecdbb478f06658375005">_lpspi_transfer_config_flag_for_master</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Can use this enum for LPSPI master transfer configFlags. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga8c2566783079ecdbb478f06658375005ad472cdb233d16b4b9e5372c214e34a3c"></a>kLPSPI_MasterPcs0&#160;</td><td class="fielddoc">
<p>LPSPI master xfer use PCS0 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8c2566783079ecdbb478f06658375005a1b57aa21038a9d2fe7affdda155a21d0"></a>kLPSPI_MasterPcs1&#160;</td><td class="fielddoc">
<p>LPSPI master xfer use PCS1 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8c2566783079ecdbb478f06658375005abd22976ae5150a0f57f27f439d25e6d0"></a>kLPSPI_MasterPcs2&#160;</td><td class="fielddoc">
<p>LPSPI master xfer use PCS2 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8c2566783079ecdbb478f06658375005a38ce619f68339f607e63affd7ce012a5"></a>kLPSPI_MasterPcs3&#160;</td><td class="fielddoc">
<p>LPSPI master xfer use PCS3 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8c2566783079ecdbb478f06658375005a81e8942cb9a3dc01b6900fa0fc44a807"></a>kLPSPI_MasterPcsContinuous&#160;</td><td class="fielddoc">
<p>Is PCS signal continuous </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga8c2566783079ecdbb478f06658375005aada04eea6a730a7536682944531385bb"></a>kLPSPI_MasterByteSwap&#160;</td><td class="fielddoc">
<p>LPSPI master transfer byte order would be the same with the bitPerFrame which is set to 8 if use this flag. For instance , you want to send data is : 1 2 3 4 5 6 7 8 (set lpspi_shift_direction_t to MSB) if set bitPerFrame = 8 , the waveform is 1 2 3 4 5 6 7 8 ; if set bitPerFrame = 64 , the waveform would be 4 3 2 1 8 7 6 5 ( do not use the kLPSPI_MasterByteSwap flag); or the waveform would be 1 2 3 4 5 6 7 8 (use the kLPSPI_MasterByteSwap flag in transfer structure) </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gaf3ef07696513a970ce8195b5b0f1a8c1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gaf3ef07696513a970ce8195b5b0f1a8c1">_lpspi_transfer_config_flag_for_slave</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Can use this enum for LPSPI slave transfer configFlags. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggaf3ef07696513a970ce8195b5b0f1a8c1ab1faad46d523e037048a3064893ae07c"></a>kLPSPI_SlavePcs0&#160;</td><td class="fielddoc">
<p>LPSPI slave xfer use PCS0 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf3ef07696513a970ce8195b5b0f1a8c1a0e6aee8fe7dfd9c2d66b505d73c37232"></a>kLPSPI_SlavePcs1&#160;</td><td class="fielddoc">
<p>LPSPI slave xfer use PCS1 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf3ef07696513a970ce8195b5b0f1a8c1ae64e50be4483554dc3ebc66c379de03e"></a>kLPSPI_SlavePcs2&#160;</td><td class="fielddoc">
<p>LPSPI slave xfer use PCS2 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf3ef07696513a970ce8195b5b0f1a8c1a6d5cce71f6a0551128e551100bc9f39f"></a>kLPSPI_SlavePcs3&#160;</td><td class="fielddoc">
<p>LPSPI slave xfer use PCS3 signal </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaf3ef07696513a970ce8195b5b0f1a8c1a42d91e6c56fda80853954fdf01365998"></a>kLPSPI_SlaveByteSwap&#160;</td><td class="fielddoc">
<p>LPSPI slave transfer byte order would be the same with the bitPerFrame which is set to 8 if use this flag. For instance , you want to send data is : 1 2 3 4 5 6 7 8 (set lpspi_shift_direction_t to MSB) if set bitPerFrame = 8 , the waveform is 1 2 3 4 5 6 7 8 ; if set bitPerFrame = 64 , the waveform would be 4 3 2 1 8 7 6 5 ( do not use the kLPSPI_MasterByteSwap flag); or the waveform would be 1 2 3 4 5 6 7 8 (use the kLPSPI_MasterByteSwap flag in transfer structure) </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga7718265fdc39522b101e1deb430ab1f7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga7718265fdc39522b101e1deb430ab1f7">_lpspi_transfer_state</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI transfer state, which is used for LPSPI transactiaonl APIs' state machine. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga7718265fdc39522b101e1deb430ab1f7ad1366ce0c1c0c8a66a6ee9611cb4ae8c"></a>kLPSPI_Idle&#160;</td><td class="fielddoc">
<p>Nothing in the transmitter/receiver. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga7718265fdc39522b101e1deb430ab1f7a81465b4e8946a9a8b3634e4fc04933fd"></a>kLPSPI_Busy&#160;</td><td class="fielddoc">
<p>Transfer queue is not finished. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga7718265fdc39522b101e1deb430ab1f7a9f52ab17cca4320266e1b7c194df33ec"></a>kLPSPI_Error&#160;</td><td class="fielddoc">
<p>Transfer error. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga00a7c64b74442ff1961346c0297f9ab3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga00a7c64b74442ff1961346c0297f9ab3">lpspi_clock_phase_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI clock phase configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga00a7c64b74442ff1961346c0297f9ab3a1c127121f13c6756c19c6640a1a3f66f"></a>kLPSPI_ClockPhaseFirstEdge&#160;</td><td class="fielddoc">
<p>CPHA=0. Data is captured on the leading edge of the SCK and changed on the following edge. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga00a7c64b74442ff1961346c0297f9ab3a69541d5ec76b63987c1523f67f281039"></a>kLPSPI_ClockPhaseSecondEdge&#160;</td><td class="fielddoc">
<p>CPHA=1. Data is changed on the leading edge of the SCK and captured on the following edge. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gaafc42f4a3c8eb16d4777f3c6f0f8654c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gaafc42f4a3c8eb16d4777f3c6f0f8654c">lpspi_clock_polarity_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI clock polarity configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggaafc42f4a3c8eb16d4777f3c6f0f8654ca5f5af0b1696c75bddcc45548dc6eb4e5"></a>kLPSPI_ClockPolarityActiveHigh&#160;</td><td class="fielddoc">
<p>CPOL=0. Active-high LPSPI clock (idles low) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaafc42f4a3c8eb16d4777f3c6f0f8654ca8d0257641a93e1539be2284aa8dea2c2"></a>kLPSPI_ClockPolarityActiveLow&#160;</td><td class="fielddoc">
<p>CPOL=1. Active-low LPSPI clock (idles high) </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga134cbe42b20647e752e66aaeabbc10d4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga134cbe42b20647e752e66aaeabbc10d4">lpspi_data_out_config_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI data output configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga134cbe42b20647e752e66aaeabbc10d4a82a3d2bf52e339c016ea5b55b6e5a0b5"></a>kLpspiDataOutRetained&#160;</td><td class="fielddoc">
<p>Data out retains last value when chip select de-asserted </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga134cbe42b20647e752e66aaeabbc10d4ad88e6541ea02827476f10ca3a7906129"></a>kLpspiDataOutTristate&#160;</td><td class="fielddoc">
<p>Data out is tristated when chip select de-asserted </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gae5e0bf71f3d28f35327f0268039d0c0c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">lpspi_delay_type_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI delay type selection. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggae5e0bf71f3d28f35327f0268039d0c0ca3d71d8a9758a52226844e7b721f3dfb8"></a>kLPSPI_PcsToSck&#160;</td><td class="fielddoc">
<p>Pcs-to-SCK delay. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae5e0bf71f3d28f35327f0268039d0c0ca4c475db384f87476967ad8318fc8e941"></a>kLPSPI_LastSckToPcs&#160;</td><td class="fielddoc">
<p>Last SCK edge to Pcs delay. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae5e0bf71f3d28f35327f0268039d0c0caec200ab5e56e72854f694bc65846e015"></a>kLPSPI_BetweenTransfer&#160;</td><td class="fielddoc">
<p>Delay between transfers. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga9179eac6fe5a70f9350df669a4547b57"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga9179eac6fe5a70f9350df669a4547b57">lpspi_host_request_select_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Host Request select configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga9179eac6fe5a70f9350df669a4547b57a1ecf2a9ee61a10a6abfd3b003ecded95"></a>kLPSPI_HostReqExtPin&#160;</td><td class="fielddoc">
<p>Host Request is an ext pin. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga9179eac6fe5a70f9350df669a4547b57ae7bcf394055c5c96962fbdeb59473b53"></a>kLPSPI_HostReqInternalTrigger&#160;</td><td class="fielddoc">
<p>Host Request is an internal trigger. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gae28cea6ce513555e39a3ac343d05ad52"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gae28cea6ce513555e39a3ac343d05ad52">lpspi_master_slave_mode_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI master or slave mode configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggae28cea6ce513555e39a3ac343d05ad52a5f5755c293c4eea06b35528c7dadb505"></a>kLPSPI_Master&#160;</td><td class="fielddoc">
<p>LPSPI peripheral operates in master mode. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae28cea6ce513555e39a3ac343d05ad52ac2fbf07d3dcc5fd91629c58bec8aa5c4"></a>kLPSPI_Slave&#160;</td><td class="fielddoc">
<p>LPSPI peripheral operates in slave mode. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gac44bb22e39759dab2695974b9e232396"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gac44bb22e39759dab2695974b9e232396">lpspi_match_config_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Match configuration options. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396a05d1b5c903dfe4898c9b1fd684250294"></a>kLPSI_MatchDisabled&#160;</td><td class="fielddoc">
<p>LPSPI Match Disabled. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396a17bfedfd52cb4ad0b4806b0867a04e89"></a>kLPSI_1stWordEqualsM0orM1&#160;</td><td class="fielddoc">
<p>LPSPI Match Enabled. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396ae98eab6b132ff11c1df102e8e6cdd24c"></a>kLPSI_AnyWordEqualsM0orM1&#160;</td><td class="fielddoc">
<p>LPSPI Match Enabled. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396a11c22b22c672c03591c560a6c8faf428"></a>kLPSI_1stWordEqualsM0and2ndWordEqualsM1&#160;</td><td class="fielddoc">
<p>LPSPI Match Enabled. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396a67938e63bf8168ce35e090a2b210ad2e"></a>kLPSI_AnyWordEqualsM0andNxtWordEqualsM1&#160;</td><td class="fielddoc">
<p>LPSPI Match Enabled. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396a20ae6796a58bde43ba80737927e905ab"></a>kLPSI_1stWordAndM1EqualsM0andM1&#160;</td><td class="fielddoc">
<p>LPSPI Match Enabled. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggac44bb22e39759dab2695974b9e232396a02b507b2df58ba42c650727fc0a1cfa5"></a>kLPSI_AnyWordAndM1EqualsM0andM1&#160;</td><td class="fielddoc">
<p>LPSPI Match Enabled. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga6303bce5095876c64d47e3b19e76bd97"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga6303bce5095876c64d47e3b19e76bd97">lpspi_pcs_polarity_config_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Peripheral Chip Select (Pcs) Polarity configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga6303bce5095876c64d47e3b19e76bd97a5be0e938a788cff5717c2c2590e52c59"></a>kLPSPI_PcsActiveHigh&#160;</td><td class="fielddoc">
<p>Pcs Active High (idles low) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga6303bce5095876c64d47e3b19e76bd97a4a1448bee9f6f3d4383fe13cdc1100ce"></a>kLPSPI_PcsActiveLow&#160;</td><td class="fielddoc">
<p>Pcs Active Low (idles high) </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gae5ea17a161935f47c786934c524bb2af"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gae5ea17a161935f47c786934c524bb2af">lpspi_pin_config_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI pin (SDO and SDI) configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggae5ea17a161935f47c786934c524bb2afa25d21ca2f0397f7bf6c23a1b1c6691f7"></a>kLPSPI_SdiInSdoOut&#160;</td><td class="fielddoc">
<p>LPSPI SDI input, SDO output. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae5ea17a161935f47c786934c524bb2afa33c599830166b775f368ee16ff0682d5"></a>kLPSPI_SdoInSdoOut&#160;</td><td class="fielddoc">
<p>LPSPI SDO input, SDO output. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae5ea17a161935f47c786934c524bb2afa1e5af86e47569305db258791cb467d30"></a>kLPSPI_SdiInSdiOut&#160;</td><td class="fielddoc">
<p>LPSPI SDI input, SDI output. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggae5ea17a161935f47c786934c524bb2afa43f7557904b7103eeb4516624d0c995c"></a>kLPSPI_SdoInSdiOut&#160;</td><td class="fielddoc">
<p>LPSPI SDO input, SDI output. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga4116edfccfda3a0788a9b68bb9b50fcd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga4116edfccfda3a0788a9b68bb9b50fcd">lpspi_shift_direction_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI data shifter direction options. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga4116edfccfda3a0788a9b68bb9b50fcda6cfcf70021ed17b06148973a577b06b0"></a>kLPSPI_MsbFirst&#160;</td><td class="fielddoc">
<p>Data transfers start with most significant bit. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga4116edfccfda3a0788a9b68bb9b50fcdaa258be180c87a702892e74e80612bcac"></a>kLPSPI_LsbFirst&#160;</td><td class="fielddoc">
<p>Data transfers start with least significant bit. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gaa5d9038e390c8a7610dc72375da252a7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#gaa5d9038e390c8a7610dc72375da252a7">lpspi_transfer_width_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI transfer width configuration. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ggaa5d9038e390c8a7610dc72375da252a7a56986005418db6d0910782c58ed92dc0"></a>kLPSPI_SingleBitXfer&#160;</td><td class="fielddoc">
<p>1-bit shift at a time, data out on SDO, in on SDI (normal mode) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaa5d9038e390c8a7610dc72375da252a7aeb5365dd5861043f098db28e9945c191"></a>kLPSPI_TwoBitXfer&#160;</td><td class="fielddoc">
<p>2-bits shift out on SDO/SDI and in on SDO/SDI </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ggaa5d9038e390c8a7610dc72375da252a7a591c0c33b13b3fc9fe8d05bb14e5176a"></a>kLPSPI_FourBitXfer&#160;</td><td class="fielddoc">
<p>4-bits shift out on SDO/SDI/PCS[3:2] and in on SDO/SDI/PCS[3:2] </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga90ad4c281c99433627f8cccf56b2a653"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__lpspi__driver.html#ga90ad4c281c99433627f8cccf56b2a653">lpspi_which_pcs_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Peripheral Chip Select (Pcs) configuration (which Pcs to configure). </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga90ad4c281c99433627f8cccf56b2a653ad0a33b6673cd3a9e54ab55f5d5138871"></a>kLPSPI_Pcs0&#160;</td><td class="fielddoc">
<p>Pcs[0] </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga90ad4c281c99433627f8cccf56b2a653a276b09136d3d15a0fe0dc5d0bab9b3f1"></a>kLPSPI_Pcs1&#160;</td><td class="fielddoc">
<p>Pcs[1] </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga90ad4c281c99433627f8cccf56b2a653a2d4d2611c76b7832b346d00072f49561"></a>kLPSPI_Pcs2&#160;</td><td class="fielddoc">
<p>Pcs[2] </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="gga90ad4c281c99433627f8cccf56b2a653a91ecfb74e3c582725faea8aa28700590"></a>kLPSPI_Pcs3&#160;</td><td class="fielddoc">
<p>Pcs[3] </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga46f471b0b317dbcefb753ac1eca220cc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_ClearStatusFlags </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>statusFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Clears the LPSPI status flag. </p>
<p>This function clears the desired status bit by using a write-1-to-clear. The user passes in the base and the desired status flag bit to clear. The list of status flags is defined in the _lpspi_flags. Example usage: </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;LPSPI_ClearStatusFlags(base, kLPSPI_TxDataRequestFlag|kLPSPI_RxDataReadyFlag);</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">statusFlags</td><td>The status flag , used from type _lpspi_flags. </td></tr>
  </table>
  </dd>
</dl>
<p>&lt; The status flags are cleared by writing 1 (w1c). </p>

</div>
</div>
<a class="anchor" id="gaec14fb9cf6f33a9482cad1ac3367ceeb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_Deinit </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>De-initialize the LPSPI peripheral, call this API to disbale the lpspi clock. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae40bb751eb579a3ba6f0df9d2b128074"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_DisableDMA </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Disable the LPSPI DMA request. </p>
<p>This function configures the Rx and Tx DMA mask of the LPSPI. The parameters are base, DMA mask. </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;SPI_DisableDMA(base, kLPSPI_TxDmaEnable | kLPSPI_RxDmaEnable);</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">mask</td><td>The interrupt mask, can use the enum _lpspi_dma_enable. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga40a046e84442cb6f187f37b676a026cc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_DisableInterrupts </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Disable the LPSPI interrupts. </p>
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;LPSPI_DisableInterrupts(base, kLPSPI_TxInterruptEnable | kLPSPI_RxInterruptEnable );</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">mask</td><td>The interrupt mask, can use the enum _lpspi_interrupt_enable. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga7652e02b7e15dbbe611bf1b88aa6f658"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_Enable </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enables the LPSPI peripheral and sets the MCR MDIS to 0. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">enable</td><td>pass true to enable module, false to disable module. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga962cc835d0c6133d3b5ca97103ffb3fb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_EnableDMA </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enable the LPSPI DMA request. </p>
<p>This function configures the Rx and Tx DMA mask of the LPSPI. The parameters are base, DMA mask. </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;LPSPI_EnableDMA(base, kLPSPI_TxDmaEnable | kLPSPI_RxDmaEnable);</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">mask</td><td>The interrupt mask, can use the enum _lpspi_dma_enable. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga4808761455aaf83e91fd8379874946ed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_EnableInterrupts </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enable the LPSPI interrupts. </p>
<p>This function configures the various interrupt masks of the LPSPI. The parameters are base, interrupt mask. Note, for Tx Fill and Rx FIFO Drain requests, enable the interrupt request will disable the DMA request in the meanwhile. </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;LPSPI_EnableInterrupts(base, kLPSPI_TxInterruptEnable | kLPSPI_RxInterruptEnable );</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">mask</td><td>The interrupt mask, can use the enum _lpspi_interrupt_enable. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1388a83ff99459ea04927a951fe4ba64"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_FlushFifo </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>flushTxFifo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>flushRxFifo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Flushes the LPSPI FIFOs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">flushTxFifo</td><td>Flushes (true) the Tx FIFO, else do not flush (false) the Tx FIFO </td></tr>
    <tr><td class="paramname">flushRxFifo</td><td>Flushes (true) the Rx FIFO, else do not flush (false) the Rx FIFO </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaccf9caba656fbab8c2baaf9c064dfd18"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetRxFifoCount </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI Rx FIFO count. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of words in the receive FIFO. </dd></dl>

</div>
</div>
<a class="anchor" id="ga06d5b0b646c41f819d66c570abe82686"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetRxFifoSize </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI Rx FIFO size. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The LPSPI Rx FIFO size. </dd></dl>

</div>
</div>
<a class="anchor" id="ga441f4a34fc1014e80df6dbdd3ccef49e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetRxRegisterAddress </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI Receive Data Register address for DMA operation. </p>
<p>This function gets the LPSPI Receive Data Register address as this value is needed for the DMA operation. This function can be used for either master or slave mode.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The LPSPI Receive Data Register address </dd></dl>

</div>
</div>
<a class="anchor" id="ga65f275a2b7c4c85e65f66dc205ccaba2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetStatusFlags </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI status flag state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The LPSPI status(in SR register). </dd></dl>

</div>
</div>
<a class="anchor" id="gaad302d78079501338706a15b2a25b627"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetTxFifoCount </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI Tx FIFO count. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of words in the transmit FIFO. </dd></dl>

</div>
</div>
<a class="anchor" id="gaa8de4de520051c5d597c187c83a716fe"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetTxFifoSize </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI Tx FIFO size. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The LPSPI Tx FIFO size. </dd></dl>

</div>
</div>
<a class="anchor" id="gad411d09a6ece1909f3fa0c6eb6972a27"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_GetTxRegisterAddress </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the LPSPI Transmit Data Register address for DMA operation. </p>
<p>This function gets the LPSPI Transmit Data Register address as this value is needed for the DMA operation. This function can be used for either master or slave mode.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The LPSPI Transmit Data Register address </dd></dl>

</div>
</div>
<a class="anchor" id="gaf0a22161d44cf08f3609ce0371190b43"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static bool LPSPI_IsMaster </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns whether the LPSPI module is in master mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns true if the module is in master mode or false if the module is in slave mode. </dd></dl>

</div>
</div>
<a class="anchor" id="gac66232f8876a20334a9c01cfd83a4bce"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_MasterAbortTransfer </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_master_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI master abort transfer which using interrupt. </p>
<p>This function abort transfer which using interrupt.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_master_handle_t structure which stores the transfer state. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga81ce64b08a05cb34fe8416c9fc2c969f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_MasterCreateHandle </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_master_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#ga65b6cc7e0ab88322b8c87957c855b595">lpspi_master_transfer_callback_t</a>&#160;</td>
          <td class="paramname"><em>callback</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>userData</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize the lpspi master handle. </p>
<p>This function initializes the LPSPI handle which can be used for other LPSPI transactional APIs. Usually, for a specified LPSPI instance, user need only call this API once to get the initialized handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>LPSPI handle pointer to lpspi_master_handle_t. </td></tr>
    <tr><td class="paramname">callback</td><td>dspi callback. </td></tr>
    <tr><td class="paramname">userData</td><td>callback function parameter. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf7c865e3ddf8b0e8b39eaa044ebdd7a9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_MasterGetDefaultConfig </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t">lpspi_master_config_t</a> *&#160;</td>
          <td class="paramname"><em>masterConfig</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the <a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t" title="LPSPI master config structure. ">lpspi_master_config_t</a> structure to default values. </p>
<p>The purpose of this API is to get the config structure initialized for <a class="el" href="group__lpspi__driver.html#ga22ae05bf7948761752a425f273423af4" title="LPSPI master Init. ">LPSPI_MasterInit()</a>. User may use the initialized structure unchanged in <a class="el" href="group__lpspi__driver.html#ga22ae05bf7948761752a425f273423af4" title="LPSPI master Init. ">LPSPI_MasterInit()</a>, or modify some fields of the structure before calling <a class="el" href="group__lpspi__driver.html#ga22ae05bf7948761752a425f273423af4" title="LPSPI master Init. ">LPSPI_MasterInit()</a>. Example: </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;lpspi_master_config_t  masterConfig;</div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;LPSPI_MasterGetDefaultConfig(&amp;masterConfig);</div></div><!-- fragment --> <dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">masterConfig</td><td>pointer to <a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t" title="LPSPI master config structure. ">lpspi_master_config_t</a> structure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga4ff6873dffb078d1d49532ad0670e405"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> LPSPI_MasterGetTransferCount </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_master_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the master transfer remaining bytes. </p>
<p>This function get the master transfer remaining bytes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_master_handle_t structure which stores the transfer state. </td></tr>
    <tr><td class="paramname">count</td><td>Number of bytes transferred so far by the non-blocking transaction. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>

</div>
</div>
<a class="anchor" id="gaacfd1e61150c8709911fea392e5c8cea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_MasterHandleInterrupt </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_master_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Master IRQ handler function. </p>
<p>This function process the LPSPI transmit and receive IRQ.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_master_handle_t structure which stores the transfer state. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga22ae05bf7948761752a425f273423af4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_MasterInit </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t">lpspi_master_config_t</a> *&#160;</td>
          <td class="paramname"><em>masterConfig</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>srcClock_Hz</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI master Init. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">masterConfig</td><td>Pointer to structure <a class="el" href="group__lpspi__driver.html#structlpspi__master__config__t" title="LPSPI master config structure. ">lpspi_master_config_t</a>. </td></tr>
    <tr><td class="paramname">srcClock_Hz</td><td>Module source input clock in Hertz </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga6e952fee44ee7107dd22be1fcca41599"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t LPSPI_MasterSetBaudRate </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>baudRate_Bps</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>srcClock_Hz</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>tcrPrescaleValue</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the LPSPI baud rate in bits per second. </p>
<p>This function takes in the desired bitsPerSec (baud rate) and calculates the nearest possible baud rate without exceeding the desired baud rate, and returns the calculated baud rate in bits-per-second. It requires that the caller also provide the frequency of the module source clock (in Hertz). Also note that the baud rate does not go into effect until the Transmit Control Register (TCR) is programmed with the prescale value. Hence, this function returns the prescale tcrPrescaleValue parameter for later programming in the TCR. The higher level peripheral driver should alert the user of an out of range baud rate input.</p>
<p>Note that the LPSPI module must first be disabled before configuring this. Note that the LPSPI module must be configured for master mode before configuring this.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">baudRate_Bps</td><td>The desired baud rate in bits per second </td></tr>
    <tr><td class="paramname">srcClock_Hz</td><td>Module source input clock in Hertz </td></tr>
    <tr><td class="paramname">tcrPrescaleValue</td><td>The TCR prescale value, needed by user to program the TCR </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The actual calculated baud rate. This function may also return a "0" if the LPSPI is not configured for master mode or if the LPSPI module is not disabled. </dd></dl>

</div>
</div>
<a class="anchor" id="ga9b69797908deb95b2b96e76bc7f8e4f9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_MasterSetDelayScaler </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>scaler</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">lpspi_delay_type_t</a>&#160;</td>
          <td class="paramname"><em>whichDelay</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Manually configures a specific LPSPI delay parameter (module must be disabled to change the delay values). </p>
<p>This function configures the following: SCK to PCS delay, or PCS to SCK delay, or The configurations must occur between the transfer delay.</p>
<p>The delay names are available in type lpspi_delay_type_t.</p>
<p>The user passes the desired delay along with the delay value. This allows the user to directly set the delay values if they have pre-calculated them or if they simply wish to manually increment the value.</p>
<p>Note that the LPSPI module must first be disabled before configuring this. Note that the LPSPI module must be configured for master mode before configuring this.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">scaler</td><td>The 8-bit delay value 0x00 to 0xFF (255) </td></tr>
    <tr><td class="paramname">whichDelay</td><td>The desired delay to configure, must be of type lpspi_delay_type_t </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga35f5b5317e3faffe8307221c24c2eeb3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t LPSPI_MasterSetDelayTimes </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>delayTimeInNanoSec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#gae5e0bf71f3d28f35327f0268039d0c0c">lpspi_delay_type_t</a>&#160;</td>
          <td class="paramname"><em>whichDelay</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>srcClock_Hz</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates the delay based on the desired delay input in nanoseconds (module must be disabled to change the delay values). </p>
<p>This function calculates the values for the following: SCK to PCS delay, or PCS to SCK delay, or The configurations must occur between the transfer delay.</p>
<p>The delay names are available in type lpspi_delay_type_t.</p>
<p>The user passes the desired delay and the desired delay value in nano-seconds. The function calculates the value needed for the desired delay parameter and returns the actual calculated delay because an exact delay match may not be possible. In this case, the closest match is calculated without going below the desired delay value input. It is possible to input a very large delay value that exceeds the capability of the part, in which case the maximum supported delay is returned. It is up to the higher level peripheral driver to alert the user of an out of range delay input.</p>
<p>Note that the LPSPI module must first be disabled before configuring this. Note that the LPSPI module must be configured for master mode before configuring this.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">delayTimeInNanoSec</td><td>The desired delay value in nano-seconds. </td></tr>
    <tr><td class="paramname">whichDelay</td><td>The desired delay to configure, must be of type lpspi_delay_type_t </td></tr>
    <tr><td class="paramname">srcClock_Hz</td><td>Module source input clock in Hertz </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>actual calculated delay value in nano-seconds </dd></dl>

</div>
</div>
<a class="anchor" id="ga7397508d8f35bd53d48d2bd400b8855a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> LPSPI_MasterTransferBlocking </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a> *&#160;</td>
          <td class="paramname"><em>transfer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI master transfer data using polling. </p>
<p>This function transfer data with polling, this is blocking function, will not return until all transfer have been completed.</p>
<p>Note: The transfer data size should be integer multiples of bytesPerFrame if bytesPerFrame is less than or equal to 4 . For bytesPerFrame greater than 4 situation: the transfer data size should be equal to bytesPerFrame if the bytesPerFrame is not integer multiples of 4 , otherwise , the transfer data size can be integer multiples of bytesPerFrame.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">transfer</td><td>pointer to <a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t" title="LPSPI master/slave transfer structure. ">lpspi_transfer_t</a> structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>

</div>
</div>
<a class="anchor" id="ga962d0a70e661183c6925f87d97ab71d0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> LPSPI_MasterTransferNonBlocking </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_master_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a> *&#160;</td>
          <td class="paramname"><em>transfer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI master transfer data using interrupt. </p>
<p>This function transfer data using interrupt , this is non-blocking function, will return right away, when all data have been transfer, the callback function will be called.</p>
<p>Note: The transfer data size should be integer multiples of bytesPerFrame if bytesPerFrame is less than or equal to 4 . For bytesPerFrame greater than 4 situation: the transfer data size should be equal to bytesPerFrame if the bytesPerFrame is not integer multiples of 4 , otherwise , the transfer data size can be integer multiples of bytesPerFrame.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_master_handle_t structure which stores the transfer state. </td></tr>
    <tr><td class="paramname">transfer</td><td>pointer to <a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t" title="LPSPI master/slave transfer structure. ">lpspi_transfer_t</a> structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>

</div>
</div>
<a class="anchor" id="gad424e970bbb5333e45eaea2f66885521"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint32_t LPSPI_ReadDataNonBlocking </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reads data from the data buffer. </p>
<p>This function reads the data from the Receive Data Register (RDR). This function can be used for either master or slave mode.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The data read from the data buffer </dd></dl>

</div>
</div>
<a class="anchor" id="ga65c6f36d3b7c051b2f4c4b3c0f4e67a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_Reset </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restores the LPSPI peripheral to reset state, notice that this function will set all the registers to reset state so the LPSPI module can not work after calling this API. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac44e343cc612a8f9662dca0124e01375"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_SetAllPcsPolarity </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Configures all the LPSPI peripheral chip select polarity simultaneously. </p>
<p>Note that the CFGR1 should only be written when the LPSPI is disabled (LPSPIx_CR_MEN = 0).</p>
<p>This is an example: PCS0,PCS1 set to active low and other PCS set to active high. Please note that the number of PCS is specific to the device. </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;LPSPI_SetAllPcsPolarity(base, kLPSPI_Pcs0ActiveLow | kLPSPI_Pcs1ActiveLow);</div></div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">mask</td><td>The PCS polarity mask , can use the enum _lpspi_pcs_polarity. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga9036ebfaa63448544b3a15731bf64afb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_SetFifoWatermarks </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>txWater</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>rxWater</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets the transmit and receive FIFO watermark values. </p>
<p>This function allows the user to set the receive and transmit FIFO watermarks. The function does not compare the watermark setting to the FIFO size. The FIFO watermark should not be equal to or greater than the FIFO size. It is up to the higher level driver to make this check.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">txWater</td><td>The TX FIFO watermark value . Writing a value equal or greater than the FIFO size will be truncated. </td></tr>
    <tr><td class="paramname">rxWater</td><td>The RX FIFO watermark value . Writing a value equal or greater than the FIFO size will be truncated. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1c04805f36ab2d8f3dcf8204ad4e6fc8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_SetFrameSize </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>frameSize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Configures the frame size . </p>
<p>The minimum frame size is 8-bits and the maximum frame size is 4096-bits. If the frame size is less than or equal to 32-bits, the word size and frame size are identical. If the frame size is greater than 32-bits, then the word size is 32-bits for each word except the last (the last word contains the remainder bits if the frame size is not divisible by 32). The minimum word size is 2-bits, a frame size of 33-bits (or similar) is not supported.</p>
<p>Note 1 : the transmit command register should be initialized before enabling the LPSPI in slave mode, although the command register will not update until after the LPSPI is enabled. Once enabled, the transmit command register should only be changed if the LPSPI is idle.</p>
<p>Note 2 : The transmit and command FIFO is a combined FIFO that includes both transmit data and command words. That means the TCR register shoule be write when the Tx Fifo is not full.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">frameSize</td><td>The frame size in number of bits. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga31dd4286061d9827893b20da53fbe711"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_SetMasterSlaveMode </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#gae28cea6ce513555e39a3ac343d05ad52">lpspi_master_slave_mode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Configures the LPSPI for master or slave. </p>
<p>Note that the CFGR1 should only be written when the LPSPI is disabled (LPSPIx_CR_MEN = 0).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">mode</td><td>Mode setting (master or slave) of type lpspi_master_slave_mode_t. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gafdd65d9bb5bad35e2566267cc209fbea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_SlaveAbortTransfer </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_slave_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI slave abort transfer which using interrupt. </p>
<p>This function abort transfer which using interrupt.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_slave_handle_t structure which stores the transfer state. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga17795aed6614f3d2f449309ad7df1d57"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_SlaveCreateHandle </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_slave_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#ga5f085dc3448a6b1d5ab388ac5ce90573">lpspi_slave_transfer_callback_t</a>&#160;</td>
          <td class="paramname"><em>callback</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>userData</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize the lpspi slave handle. </p>
<p>This function initializes the LPSPI handle which can be used for other LPSPI transactional APIs. Usually, for a specified LPSPI instance, user need only call this API once to get the initialized handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>LPSPI handle pointer to lpspi_slave_handle_t. </td></tr>
    <tr><td class="paramname">callback</td><td>dspi callback. </td></tr>
    <tr><td class="paramname">userData</td><td>callback function parameter. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga5c8896fd0d8c76434b74698487f0f838"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_SlaveGetDefaultConfig </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t">lpspi_slave_config_t</a> *&#160;</td>
          <td class="paramname"><em>slaveConfig</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the <a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t" title="LPSPI slave config structure. ">lpspi_slave_config_t</a> structure to default values. </p>
<p>The purpose of this API is to get the config structure initialized for <a class="el" href="group__lpspi__driver.html#ga2f690f608d984b845a7bee7a1efae45f" title="LPSPI slave configuration. ">LPSPI_SlaveInit()</a>. User may use the initialized structure unchanged in <a class="el" href="group__lpspi__driver.html#ga2f690f608d984b845a7bee7a1efae45f" title="LPSPI slave configuration. ">LPSPI_SlaveInit()</a>, or modify some fields of the structure before calling <a class="el" href="group__lpspi__driver.html#ga2f690f608d984b845a7bee7a1efae45f" title="LPSPI slave configuration. ">LPSPI_SlaveInit()</a>. Example: </p><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;lpspi_slave_config_t  slaveConfig;</div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;LPSPI_SlaveGetDefaultConfig(&amp;slaveConfig);</div></div><!-- fragment --> <dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slaveConfig</td><td>pointer to <a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t" title="LPSPI slave config structure. ">lpspi_slave_config_t</a> structure. </td></tr>
  </table>
  </dd>
</dl>
<p>&lt; Bits per frame, minimum 4, maximum 16.</p>
<p>&lt; Clock polarity.</p>
<p>&lt; Clock phase.</p>
<p>&lt; MSB or LSB data shift direction.</p>
<p>&lt; Desired Peripheral Chip Select (pcs)</p>
<p>&lt; Desired PCS active high or low </p>

</div>
</div>
<a class="anchor" id="ga30990cbcf40543dfbc514c11bfb5c4b9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> LPSPI_SlaveGetTransferCount </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_slave_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the slave transfer remaining bytes. </p>
<p>This function get the slave transfer remaining bytes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_slave_handle_t structure which stores the transfer state. </td></tr>
    <tr><td class="paramname">count</td><td>Number of bytes transferred so far by the non-blocking transaction. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>

</div>
</div>
<a class="anchor" id="ga4663d972940c359b6ff968b276a8eb0a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_SlaveHandleInterrupt </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_slave_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI Slave IRQ handler function. </p>
<p>This function process the LPSPI transmit and receive IRQ.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_slave_handle_t structure which stores the transfer state. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2f690f608d984b845a7bee7a1efae45f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LPSPI_SlaveInit </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t">lpspi_slave_config_t</a> *&#160;</td>
          <td class="paramname"><em>slaveConfig</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI slave configuration. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">slaveConfig</td><td>Pointer to structure <a class="el" href="group__lpspi__driver.html#structlpspi__slave__config__t" title="LPSPI slave config structure. ">lpspi_slave_config_t</a>. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga41d2ccaef2f31a13ce2baef806a7aa2b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ksdk__common.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> LPSPI_SlaveTransferNonBlocking </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">lpspi_slave_handle_t *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t">lpspi_transfer_t</a> *&#160;</td>
          <td class="paramname"><em>transfer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>LPSPI slave transfer data using interrupt. </p>
<p>This function transfer data using interrupt , this is non-blocking function, will return right away, when all data have been transfer, the callback function will be called.</p>
<p>Note: The transfer data size should be integer multiples of bytesPerFrame if bytesPerFrame is less than or equal to 4 . For bytesPerFrame greater than 4 situation: the transfer data size should be equal to bytesPerFrame if the bytesPerFrame is not integer multiples of 4 , otherwise , the transfer data size can be integer multiples of bytesPerFrame.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">handle</td><td>pointer to lpspi_slave_handle_t structure which stores the transfer state. </td></tr>
    <tr><td class="paramname">transfer</td><td>pointer to <a class="el" href="group__lpspi__driver.html#structlpspi__transfer__t" title="LPSPI master/slave transfer structure. ">lpspi_transfer_t</a> structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>status of status_t. </dd></dl>

</div>
</div>
<a class="anchor" id="ga3c54f5e7381db4f9291ca7f2e74e92d8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void LPSPI_WriteDataNonBlocking </td>
          <td>(</td>
          <td class="paramtype">LPSPI_Type *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Writes data into the transmit data buffer. </p>
<p>This function writes data passed in by the user to the Transmit Data Register (TDR). The user can pass up to 32-bits of data to load into the TDR. If the frame size exceeds 32-bits, the user has to manage sending the data one 32-bit word at a time. Any writes to the TDR result in an immediate push to the transmit FIFO. This function can be used for either master or slave modes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">base</td><td>LPSPI peripheral address. </td></tr>
    <tr><td class="paramname">data</td><td>The data word to be sent </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Mon Mar 7 2016 16:48:23 for Kinetis Bootloader by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
